Napomena: Funkcija, metod, objekat ili svojstvo opisano u ovoj temi onemogućena je ako je usluga Microsoft Jet Expression pokrenuta u režimu sandbox, što sprečava procenu potencijalno nebezbednih izraza. Više informacija o režimu "sandbox" potražite u odeljku "režim sandbox" u pomoći.
Vraća nisku koja predstavlja ime datoteke, direktorijuma ili fascikle koja se podudara sa navedenim atributom obrasca ili datoteke ili sa oznakom volumena disk jedinice.
Sintaksa
Dir[(imeputanje [, atributi] )]
Sintaksa funkcije Dir ima sledeće argumente:
Argument |
Opis |
ime putanje |
Opcionalno. Izraz niske koji navodi ime datoteke – može da sadrži direktorijum ili fasciklu i disk jedinicu. Niska nulte dužine ("") vraća se ako nije pronađena niska putanje. |
Atribute |
Opcionalno. Konstanta ili brojni izraz, čiji zbir navodi atribute datoteke. Ako se izostavi, vraća datoteke koje se podudaraju sa imenom putanje , ali ne i atribute. |
Postavke
Postavke atributaargument su:
Konstanta |
Vrednost |
Opis |
vbNormalno |
0 |
(Podrazumevano) Navodi datoteke bez atributa. |
vbReadOnly |
1 |
Navodi datoteke samo za čitanje pored datoteka bez atributa. |
vbHidden |
2 |
Navodi skrivene datoteke pored datoteka bez atributa. |
VbSystem |
4 |
Navodi sistemske datoteke pored datoteka bez atributa. Nije dostupno na Macintosh računaru. |
vbVolume |
8 |
Navodi oznaku volumena; ako je naveden bilo koji drugi atribut, vbVolume se zanemaruje. Nije dostupno na Macintosh računaru. |
vbDirectory |
16 |
Navodi direktorijume ili fascikle pored datoteka bez atributa. |
vbAlias |
64 |
Navedeno ime datoteke je pseudonim. Dostupno samo na Macintosh računaru. |
Napomena: Ove konstante navodi Visual Basic for Applications (VBA) i mogu da se koriste bilo gde u kodu umesto stvarnih vrednosti.
Napomene
U operativnom sistemu Microsoft Windows, Dir podržava korišćenje više znakova (*) i džoker znakova (?) za navođenje više datoteka. Na Macintosh računaru ovi znakovi se tretiraju kao važeći znakovi imena datoteke i ne mogu se koristiti kao džoker znakovi za navođenje više datoteka.
Pošto Macintosh ne podržava džoker znakove, koristite tip datoteke da biste identifikovali grupe datoteka. Možete da koristite funkciju MacID da biste naveli tip datoteke umesto da koristite imena datoteka. Na primer, sledeći izraz daje ime prve TEXT datoteke u trenutnoj fascikli:
Dir("SomePath", MacID("TEXT"))
Da biste ponavljali preko svih datoteka u fascikli, navedite praznu nisku:
Dir("")
Ako koristite funkciju MacID saalatkom Dir u operativnom sistemu Windows, dolazi do greške.
Svi atributi vrednosti veće od 256 smatraju se MacID vrednošću .
Morate navesti ime putanje kada prvi put pozovete funkciju Dir ili dođe do greške. Ako navedete i atribute datoteke, mora biti uključeno ime putanje.
Dir daje ime prve datoteke koje se podudara sa imenom putanje. Da biste dobili sva dodatna imena datoteka koja se podudaraju sa imenom putanje, ponovo pozovite Dir bez argumenata. Kada se više ne podudaraju imena datoteka, Dir daje nisku nulte dužine (""). Kada dobijete nisku nulte dužine, morate da navedete ime putanje u narednim pozivima ili da dođe do greške. Možete da promenite u novo ime putanje bez preuzimanja svih imena datoteka koja se podudaraju sa imenom trenutne putanje. Međutim, funkciju Dir ne možete da pozovete rekurzivno. Pozivanje Dir sa atributom vbDirectory ne daje neprekidno poddirektorijume.
Savet Pošto se imena datoteka ne preuzimaju određenim redosledom, možda ćete želeti da uskladištite vraćena imena datoteka u niz, a zatim da sortirate niz.
Primer
Napomena: Primeri koji slede pokazuju upotrebu ove funkcije u Visual Basic for Applications (VBA) modulu. Za više informacija o radu sa VBA modulom izaberite stavku Referenca razvojnog programera sa padajuće liste pored stavke Pretraga i unesite termine u polje za pretragu.
Ovaj primer koristi funkciju Dir za proveru da li određene datoteke i direktorijumi postoje. Na Macintosh računaru, "HD:" je podrazumevano ime disk jedinice, a delovi imena putanje razdvojene su dvotačkama umesto kosim crtama. Windows džoker znakovi se tretiraju i kao važeći znakovi imena datoteke na Macintosh računaru. Međutim, možete da koristite funkciju MacID da biste naveli grupe datoteka.
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