A VBA DIR funkció használata az Excelben (7 gyakorlati példa)

  • Ossza Meg Ezt
Hugh West

A DIR funkció a VBA főként egy adott mappából mutatja meg a könyvtárat vagy a fájlokat. Az első fájlt is vissza tudja adni ezzel a függvénnyel. Ez a függvény rengetegszer használható konkrét fájlok és mappák kinyerésére. Mindössze a fájl elérési útvonalát kell csak beilleszteni a pathname a VBA Lehet, hogy nehezebbnek találja a VBA DIR Ne aggódjon, ebben a cikkben mutatunk néhány példát a jobb megjelenítéshez, hogy jobban használhassa a VBA DIR függvényt. Remélem, hogy a cikk elolvasása után képes leszel használni a függvényt. Kezdjük tehát.

Gyakorlati munkafüzet letöltése

Töltse le az alábbi gyakorló munkafüzetet, amely segít a téma jobb megértésében.

DIR Function.xlsm

Bevezetés a DIR funkcióba

Összefoglaló:

A VBA DIR függvény egy adott mappa elérési útvonalán található fájl vagy könyvtár nevét adja vissza. Hagyományosan az első fájlt adja vissza.

Szintaxis:

Dir [ (pathname, [ attributes ] ) ] ]

Érvek Magyarázat:

Érv Kötelező/választható Magyarázat
PathName Opcionális Útvonal eléréséhez, és megadja a fájlt
Attribútumok Opcionális Állandó vagy numerikus kifejezés meghatározza a megfelelő fájlok attribútumait

Van néhány előre definiált attribútum, ezek a következők...

Attribútum neve Leírás
vbNormal Speciális attribútumok nélküli fájlok
vbReadOnly Csak olvasható, attribútumok nélküli fájlok
vbHidden Attribútumok nélküli rejtett fájlok
vbSystem Attribútumok nélküli rendszerfájlok
vbVolume Kötetcímke
vbDirectory Attribútumok nélküli könyvtárak vagy mappák
vbAlias A megadott fájlnév egy alias

7 példa a VBA DIR funkció használatára az Excelben

A leírásból talán megérthetted volna, hogy a VBA DIR függvény megadja a fájlnevet a megadott elérési útvonalból. Értelmezzük ezt egy példán keresztül. Itt létrehoztunk egy könyvtárat Exceldemy_Folder Ebben a mappában különböző kis mappák és fájlok találhatók.

1. Keresse meg a fájlnevet az elérési útvonalból

A mappánkban egy adott fájlt a fájlnév elérési útvonalának megadásával találhatunk meg.

A fájl elérési útvonalának másolása után futtatni kell a kódot.

Emiatt menjen a Fejlesztő tab>> pick Visual Basic . Akkor menj a Beillesztés tab>> select Modul. A Általános párbeszédpanelen, megírjuk a kódot.

Mivel a mi napirendünk az, hogy megtaláljuk a Filename az elérési útvonalból, akkor a teljes elérési útvonalat fogjuk beállítani (a gyökértől a fájlig), és a kódunk a következő lesz

 Sub FileNames() Dim FN As String FN = Dir("E:\Exceldemy\Sales_of_January.xlsx") MsgBox FN End Sub 

Itt a kódunkban az elérési útvonalat a következőképpen állítottuk be E:\Exceldemy\Sales_of_January.xlsx

Kódbontás:

  • Kezdetben deklaráltunk egy string változót FN És a kimenet a Dir függvényt ebbe a változóba mentették.
  • Ezután a Dir függvény megkeresi a fájl nevét, és visszaadja azt a megadott elérési útvonalból.
  • Akkor a MsgBox beállítja a kimenetet az üzenőmezőn keresztül. MsgBox egy üzenőmező segítségével adja vissza a kimenetet.
  • Ezután futtassa a kódot a F5 kulcs.

Végül megtaláltuk a Értékesítés_januárban.xlsx .

2. Ellenőrizze a könyvtár meglétét

Egy könyvtár létezését a Dir funkciót. Írjuk meg a kódot, hogy ellenőrizzük, hogy a Exceldemy mappa létezik. Írja le a következő kódot az általános mezőbe, és futtassa le a F5 kulcs.

 Sub CheckFile() Dim PN As String Dim File As String PN = "E:\Exceldemy" File = Dir(PN, vbDirectory) If File "" Then MsgBox File & " létezik" Else MsgBox "A fájl nem létezik" End If End Sub 

Kódbontás:

  • Két változót deklaráltunk; PN tartalmazza az ellenőrző könyvtárunk teljes elérési útvonalát.
  • Itt a Dir függvényben két értéket, az elérési utat és az attribútum értékét állítottuk be, mint vbDirectory Ez az attribútum értéke segít a könyvtár felismerésében. A függvény kimenete pedig a Fájl változó.
  • Ezután ellenőrizzük, hogy a változó üres-e. Ha úgy találjuk, hogy a változó nem üres, akkor egy üzenőmezőn keresztül kijelentjük a könyvtár létezését, ellenkező esetben a visszatérés nem létezik.

Itt a Exceldemy könyvtár létezik, így megtaláljuk a " Exceldemy létezik ", ahol Exceldemy a mappa neve.

3. Nem létező mappa létrehozása

Létrehozhat olyan mappát, amely nem létezik a számítógépén. Ehhez olyan elérési utat kell létrehoznia, amely nem létezik a mappáiban. Képzeljük el, hogy létrehozunk egy könyvtárat, amelynek a címe Exceldemy_1 . Használni fogjuk a MkDir parancsot a könyvtár létrehozásához, de előtte még meg kell írnunk a következőt VBA kód.

 Sub CheckFile() Dim PN As String Dim File As String PN = "E:\Exceldemy_1" File = Dir(PN, vbDirectory) If File "" Then MsgBox File & " File mappa létezik" Else MkDir PN MsgBox "A fájl mappa jött létre a névvel" & File End If End Sub 

Itt írtunk egy parancsot a könyvtár létrehozására az elérési útvonalat használva a Else blokkja a kódunknak. Fuss a kódot a F5 kulcs.

A könyvtár létrejött. Nézzük meg a könyvtár mappát. A Exceldemy_1 mappa már látható a számítógépén.

Hasonló olvasmányok:

  • Hogyan hívhat egy alprogramot a VBA-ban az Excelben (4 példa)
  • Érték visszaadása a VBA-funkcióban (tömb és nem tömb értékek)
  • A VBA UCASE funkció használata Excelben (4 példa)
  • Hogyan használjuk a TRIM funkciót a VBA-ban az Excelben (definíció + VBA-kód)

4. Az első fájl keresése egy könyvtárból

Az elsődleges feladat a Dir függvény feladata, hogy megtalálja az első fájlt a megadott könyvtárban. A függvényen belül csak az elérési utat kell megadni (a tároló könyvtárig), és a függvény visszaadja a könyvtár legelső fájlját.

Keressük meg az első fájlt a Exceldemy A kódunk a következő lesz

 Sub FirstFileinFolder() Dim FN As String Dim PN As String PN = "E:\Exceldemy\" FN = Dir(PN) MsgBox "Első fájl: " & FN End Sub 

Láthatjuk az alapkódot; az elérési utat átadtuk a Dir funkció. Most Fuss a kódot a F5 billentyűvel az első fájlt ebben a könyvtárban találja meg.

5. Minden fájl keresése egy könyvtárból

Az előző részben láttuk, hogyan találjuk meg az első fájlnevet egy könyvtárból. Előfordulhat az a helyzet, hogy egy adott könyvtár összes fájlját meg kell találnunk. Egy adott könyvtár összes fájljának megkereséséhez a következőt kell írnunk VBA kód.

 Sub AllFile() Dim FN As String Dim FL As String FN = Dir("E:\Exceldemy\") Do While FN "" FL = FL & vbNewLine & FN FN = Dir() Loop MsgBox ("File List:" & FL) End Sub 

Itt van két változó a fájlnevek tárolására egyetlen ( FN ), és listaként ( FL ). Do While ciklus addig iterál, amíg egyetlen fájl sem marad a könyvtárban, ezzel a ciklus segítségével minden fájlnevet a FL változó.

Futtassa le a kódot, és az alábbi képen látható módon megtalálja az összes fájlt a könyvtárban.

6. Az összes fájl és mappa keresése egy könyvtárból

Az előző részben már említettük, hogy hol találjuk meg az összes fájlt. Egy mappán belül az összes almappát is megtalálhatjuk. Ehhez írjuk a következőt VBA kódot, amelyet az alábbiakban csatoltunk.

 Sub AllFileFolders() Dim AN As String Dim Lst As String AN = Dir("E:\Exceldemy_Folder\", vbDirectory) Do While AN "" Lst = Lst & vbNewLine & AN AN = Dir() Loop MsgBox ("File Lst:" & Lst) End Sub 

A változás a kódunkban csak az attribútum paraméterek használata. A vbDirectory ezen a területen. Fuss a kódot, és az összes fájlt és almappát megtalálja a Exceldemy_Folder .

7. Egy adott típusú összes fájl keresése

A VBA Dir függvény segítségével bármilyen fájltípust megtalálhatunk. Nézzünk egy példát.

Meg fogjuk találni .csv a könyvtárunkból. A kódunk a következő lesz-

 Sub SpecialTypeFiles() Dim FL As String Dim FN As String FN = Dir("E:\Exceldemy_Folder\Exceldemy\*.csv") Do While FN "" FL = FL & vbNewLine & FN FN = Dir() Loop MsgBox ("List of .csv Files:" & FL) End Sub 

Reméljük, hogy megértette a kódot, amely hasonló mechanizmust használ a fájlok keresésére. Az elérési névben egy jokert használtunk ( * ). Ez a csillag (*) azt jelenti, hogy bármilyen karakter előfordulhat bármilyen számig. A jokert úgy használtuk, hogy a fájlnév bármi lehet, de a fájlnévnek egy .csv fájl.

Amikor a kódot futtatod, az a következő értéket adja vissza .csv fájlokat a Exceldemy könyvtár.

Gyakorlati szekció

Minden egyes lapon a jobb oldalon egy gyakorló rész van a gyakorláshoz. Kérjük, végezze el egyedül.

Következtetés

Ennyit a mai ülésről. És ezek néhány egyszerű példa a VBA Dir függvényt az Excelben. Kérjük, ha bármilyen kérdése vagy javaslata van, ossza meg velünk a hozzászólások rovatban. A jobb megértés érdekében kérjük, töltse le a gyakorló lapot. Látogasson el weboldalunkra, Exceldemy , egy egyablakos Excel-megoldásszolgáltatót, hogy megismerje a különféle Excel-módszereket. Köszönjük, hogy türelmesen olvasta ezt a cikket.

Hugh West nagy tapasztalattal rendelkező Excel-oktató és elemző, több mint 10 éves tapasztalattal az iparágban. Számvitel és pénzügy szakos alapdiplomát, valamint üzleti adminisztrációból mesterképzést szerzett. Hugh szenvedélye a tanítás, és egyedülálló tanítási megközelítést dolgozott ki, amely könnyen követhető és érthető. Az Excelben szerzett szakértői tudása világszerte több ezer diáknak és szakembernek segített abban, hogy készségeiket és karrierjüket kiválóan teljesítsék. Hugh blogján keresztül megosztja tudását a világgal, ingyenes Excel-oktatóanyagokat és online képzéseket kínálva, hogy segítse az egyéneket és a vállalkozásokat teljes potenciáljuk kibontakoztatásában.