Applies ToAccess за Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Забележка: Функцията, методът, обектът или свойството, описани в тази тема, се забраняват, ако услугата microsoft Jet Expression се изпълнява в ограничителен режим, което предотвратява оценяването на потенциално опасни изрази. За повече информация относно ограничителния режим потърсете "ограничителен режим" в помощта.

Връща стойност от тип String , представляваща името на файл, директория или папка, които съответстват на указан шаблон или файлов атрибут, или на етикета на том на устройство.

Синтаксис

Dir[(име път [, атрибути] )]

Синтаксисът на функцията Dir има следните аргументи:

Аргумент

Описание

Pathname

Незадължително. Израз във формата на низ, който указва име на файл – може да включва директория или папка и устройство. Низ с нулева дължина ("") се връща, ако името на пътя не е намерено.

Атрибути

Незадължително. Константа или числов израз, чиято сума задава файлови атрибути. Ако липсва, връща файлове, които отговарят на името на пътя , но нямат атрибути.

Настройки

Атрибутите аргумент настройките са:

Константа

Value

Описание

vbNormal

0

(По подразбиране) Задава файлове без атрибути.

vbReadOnly

1

Задава файлове само за четене в допълнение към файлове без атрибути.

vbHidden

2

Задава скрити файлове в допълнение към файлове без атрибути.

VbSystem

4

Задава системни файлове в допълнение към файлове без атрибути. Не е налично на Macintosh.

vbVolume

8

Задава етикет за силата на звука; ако е зададен друг атрибут, vbVolume се игнорира. Не е налично на Macintosh.

vbDirectory

16

Указва директории или папки в допълнение към файлове без атрибути.

vbAlias

64

Указаното име на файл е псевдоним. Налично само на Macintosh.

Забележка:  Тези константи са зададени от Visual Basic for Applications (VBA) и могат да се използват навсякъде във вашия код вместо действителните стойности.

Забележки

В Microsoft Windows Dir поддържа използването на няколко заместващи символа (*) и единичен знак (?), за да зададете множество файлове. На Macintosh тези знаци се третират като валидни знаци за имена на файлове и не могат да се използват като заместващи символи за задаване на множество файлове.

Тъй като Macintosh не поддържа заместващи символи, използвайте типа на файла, за да идентифицирате групи от файлове. Можете да използвате функцията MacID , за да зададете типа на файла, вместо да използвате имената на файловете. Например следната команда връща името на първия ТЕКСТов файл в текущата папка:

Dir("SomePath", MacID("TEXT"))

За да итерирате над всички файлове в дадена папка, задайте празен низ:

Dir("")

Ако използвате функцията MacID с Dir в Windows, възниква грешка.

Всяка стойност на атрибути , по-голяма от 256, се счита за стойност на MacID .

Трябва да зададете име на път при първото извикване на функцията Dir или възниква грешка. Ако укажете и файлови атрибути, трябва да бъде включено име на път .

Dir връща първото име на файл, което съответства на името на пътя. За да получите допълнителни имена на файлове, които отговарят на името на пътя, извикайте Dir отново без аргументи. Когато повече имената на файловете не съвпадат, Dir връща низ с нулева дължина (""). След като се върне низ с нулева дължина, трябва да зададете име на път в следващите повиквания или да възникне грешка. Можете да промените на ново име на път , без да извличате всички имена на файлове, които съответстват на текущото име на път. Въпреки това не можете да се обадите на функцията Dir рекурсивно. Извикването на Dir с атрибута vbDirectory не връща постоянно поддиректории.

Съвет     Тъй като имената на файловете не се извличат в определен ред, може да съхраните върнатите имена на файлове в масив и след това да сортирате масива.

Пример

Забележка: Примерите по-долу илюстрират използването на тази функция във Visual Basic for Applications (VBA). За повече информация относно работата с VBA изберете Справочни материали за разработчици в падащия списък до Търсене и въведете един или няколко термина в полето за търсене.

Този пример използва функцията Dir , за да провери дали съществуват определени файлове и директории. На Macintosh "HD:" е името по подразбиране на устройството и части от името на пътя са разделени с двоеточия, а не с обратно наклонени черти. Освен това заместващите символи на Windows се третират като валидни знаци за име на файл в Macintosh. Можете обаче да използвате функцията MacID , за да зададете файлови групи.

Dim MyFile, MyPath, MyName' Returns "WIN.INI" (on Microsoft Windows) if it exists.MyFile = Dir("C:\WINDOWS\WIN.INI")    ' Returns filename with specified extension. If more than one *.ini' file exists, the first file found is returned.MyFile = Dir("C:\WINDOWS\*.INI")' Call Dir again without arguments to return the next *.INI file in the ' same directory.MyFile = Dir' Return first *.TXT file with a set hidden attribute.MyFile = Dir("*.TXT", vbHidden)' Display the names in C:\ that represent directories.MyPath = "c:\"    ' Set the path.MyName = Dir(MyPath, vbDirectory)    ' Retrieve the first entry.Do While MyName <> ""    ' Start the loop.    ' Ignore the current directory and the encompassing directory.    If MyName <> "." And MyName <> ".." Then        ' Use bitwise comparison to make sure MyName is a directory.        If (GetAttr(MyPath & MyName) And vbDirectory) = vbDirectory Then            Debug.Print MyName    ' Display entry only if it        End If    ' it represents a directory.    End If    MyName = Dir    ' Get next entry.Loop

Нуждаете ли се от още помощ?

Искате ли още опции?

Разгледайте ползите от абонамента, прегледайте курсовете за обучение, научете как да защитите устройството си и още.

Общностите ви помагат да задавате и отговаряте на въпроси, да давате обратна връзка и да получавате информация от експерти с богати знания.