Dir függvény

Fontos : Ez a cikk gépi fordítással lett lefordítva, lásd a jognyilatkozatot. A cikk angol változatát itt találhatja meg.

Megjegyzés : A témakörben ismertetett függvény, metódus, objektum vagy tulajdonság le van tiltva, ha a Microsoft Jet Expression Service korlátozott engedélyekkel rendelkező üzemmódban fut, mivel ez megakadályozza az esetleg nem biztonságos kifejezések kiszűrését. A korlátozott engedélyekkel rendelkező üzemmódról többet tudhat meg, ha a súgóban rákeres a „korlátozott engedélyek” kifejezésre.

Az eredmény egy olyan karakterlánc, amely annak a fájlnak, könyvtárnak vagy mappának a nevét tartalmazza, amely megfelel egy adott mintázatnak vagy fájlattribútumnak, vagy egy meghajtó kötetcímkéjének.

Szintaxis

Dir[(elérési út [, attribútumok] )]

Dir függvény argumentumai a következők:

Argumentum

Leírás

Elérési út

Nem kötelező. Karakterlánc-kifejezés, amely megad egy fájlnevet – tartalmazhat könyvtárt vagy mappát és meghajtót is. Ha a rendszer nem találja az elérési utat, nulla hosszúságú karakterláncot ("") ad eredményül.

Attribútumok

Nem kötelező. Állandó vagy numerikus kifejezés, amelynek összege megadja a fájlattribútumokat. Ha nincs megadva, a függvény azokat a fájlokat adja eredményül, amelyek megfelelnek az elérési útnak, de nincs attribútumuk.


Beállítások

Az attribútumok argumentumbeállításai:

Állandó

Érték

Leírás

vbNormal

0

(Alapértelmezett) Az attribútum nélküli fájlokat adja meg.

vbReadOnly

1

Az attribútum nélküli fájlokon túl megadja a csak olvasható fájlokat is.

vbHidden

2

Az attribútum nélküli fájlokon túl megadja a rejtett fájlokat is.

VbSystem

4

Az attribútum nélküli fájlokon túl megadja a rendszerfájlokat is. Macintosh rendszeren nem érhető el.

vbVolume

8

Megadja a kötetcímkét; ha más attribútumot is megad, akkor a vbVolume argumentumot figyelmen kívül hagyja a függvény. Macintosh rendszeren nem érhető el.

vbDirectory

16

Az attribútum nélküli fájlokon túl megadja a könyvtárakat vagy mappákat is.

vbAlias

64

A megadott fájlnév egy hivatkozási név (alias). Csak Macintosh rendszeren érhető el.


Megjegyzés :  Ezeket az állandókat a Visual Basic for Applications (VBA) adja meg, és a kódban bárhol használhatja őket a tényleges értékek helyett.

Megjegyzések

Microsoft Windows rendszerben a * és a ? helyettesítő karaktert is használhatja a Dir függvény argumentumában arra, hogy több fájlt adjon meg. A Macintosh rendszer ezeket a karaktereket érvényes fájlnévkarakterként kezeli, így ezek nem használhatók helyettesítő karakterként több fájl megadására.

Mivel a Macintosh nem támogatja a helyettesítő karaktereket, használja a fájltípust a fájlcsoportok azonosítására. A MacID függvény segítségével megadhatja a fájltípust a fájlnevek használata helyett. A következő utasítás például az aktuális mappában lévő első TEXT (szöveges) fájl nevét adja eredményül:

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

Ha a mappa minden fájlján szeretne elvégezni valamit, adjon meg egy üres karaktersorozatot:

Dir("")

Ha a MacID függvényt Windows rendszeren használja a Dir függvénnyel, hiba lép fel.

A 256-nál nagyobb értékű attribútumokatMacID értéknek tekinti a rendszer.

Amikor először hívja meg a Dir függvényt, meg kell adnia egy elérési utat, különben hiba történik. Ha fájlattribútumot is megad, elérési utat is meg kell adnia.

A Dir az első olyan fájl nevét adja vissza, amely megfelel az elérési útnak. Ha további fájlneveket szeretne kapni, amelyek megfelelnek az elérési útnak, használja ismét argumentumok nélkül a Dir függvényt. Ha nincs több megfelelő fájlnév, akkor a Dir nulla hosszúságú karakterláncot ("") ad vissza. Miután a függvény visszaadott egy nulla hosszúságú karakterláncot, a következő hívások alkalmával meg kell adni egy elérési utat, különben hiba történik. Áttérhet új elérési útra úgy is, hogy nem kéri le az aktuális elérési útnak megfelelő összes fájlnevet. A Dir függvény azonban nem hívható rekurzív módon. Ha a Dir függvényt a vbDirectory attribútummal hívja meg, nem kapja meg az összes alkönyvtárt.

Tipp:    Mivel a lekért fájlnevek tetszőleges sorrendben lehetnek, érdemes a fájlneveket egy tömbben tárolni, majd a tömböt sorrendbe állítani.

Példa

Megjegyzés : A következő példák egy Visual Basic for Applications (VBA) modulban mutatják be a függvény használatát. A VBA használatáról a Keresés elem mellett található legördülő listából a fejlesztői forrásokat választva, majd egy vagy több keresőszót megadva kaphat további tájékoztatást.

Ebben a példában a Dir függvénnyel ellenőrizheti, hogy bizonyos fájlok és könyvtárak léteznek-e. A Macintosh rendszerben az alapértelmezett meghajtónév „HD:”, és az elérési út részei között fordított ferde vonalak helyett kettőspontok vannak. A Macintosh rendszerben a Windows helyettesítő karaktereit érvényes fájlnévkarakterként kezeli a függvény. Fájlcsoportok megadására azonban használható a MacID függvény.

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

Megjegyzés : Gépi fordítás jognyilatkozata: Ez a cikk számítógép által, emberi közreműködés nélkül lett lefordítva. A Microsoft ezeket a gépi fordításokat azért nyújtja, hogy az angol nyelvet nem beszélők minél több tartalomhoz tudjanak hozzáférni a Microsoft termékeivel, szolgáltatásaival és technológiáival kapcsolatban. A gépi fordítás miatt előfordulhat, hogy a szöveg szóhasználati, szintaktikai vagy helyesírási hibákat tartalmaz.

Ismeretek bővítése
Oktatóanyagok megismerése
Új szolgáltatások listájának lekérése
Részvétel az Office Insider programban

Hasznos volt az információ?

Köszönjük a visszajelzését!

Köszönjük visszajelzését. Jobbnak látjuk, ha az Office egyik támogatási szakemberéhez irányítjuk.

×