Помощ за Collabora Office 24.04
Връща името на файл, директория или всички файлове и директории в устройство или директория, които отговарят на зададения път за търсене.
Dir [(PathName As String [, Attributes As Integer])]
String
PathName: низов израз, задаващ пътя за търсене – директория или файл. Този аргумент може да бъде зададен само при първото извикване на функцията Dir. Ако желаете, можете да въведете пътя във вид на URL.
Attributes: целочислен израз, задаващ битовете за атрибутите на файла. Функцията Dir връща само файлове или директории, отговарящи на зададените атрибути. Можете да комбинирате няколко атрибута, като съберете стойностите им:
0: нормални файлове
16: връща само името на директорията
Използвайте този атрибут, за да проверите дали съществува файл или директория или да намерите всички файлове и папки в определена директория.
За да проверите дали файл съществува, въведете пълния път и името на файла. Ако името на файл или директория не съществува, функцията Dir връща празен низ ("").
За да получите списък на всички съществуващи файлове в определена директория, направете следното: първо извикайте функцията Dir, като зададете пълния път за търсене на файловете, например "D:\Files\*.odt". Ако пътят е правилен и търсенето открие поне един файл, функцията Dir връща името на първия файл, който отговаря на пътя за търсене. За да получите още имена на файлове, които отговарят на пътя, извикайте Dir отново, но без аргументи.
За да получите само директориите, използвайте параметъра за атрибути. Същото важи и ако искате да откриете името на даден том (например дял от твърд диск).
Sub ExampleDir
' Показва всички файлове и директории
Dim sPath As String
Dim sDir As String, sValue As String
sDir = "Директории:"
sPath = CurDir
sValue = Dir$(sPath + getPathSeparator + "*",16)
Do
If sValue <> "." And sValue <> ".." Then
If (GetAttr( sPath + getPathSeparator + sValue) And 16) >0 Then
' Получаване на директориите
sDir = sDir & chr(13) & sValue
End If
End If
sValue = Dir$
Loop Until sValue = ""
MsgBox sDir,0,sPath
End Sub