VBA DIR -toiminto - Kuinka käyttää Excel VBA DIR -toimintoa?

Sisällysluettelo

Excel VBA DIR -toiminto

VBA DIR -toiminto tunnetaan myös hakemistotoimintona, tämä on sisäänrakennettu toiminto VBA: ssa, jota käytetään antamaan meille tietyn tiedoston tai kansion tiedostonimi, mutta meidän on annettava tiedoston polku, tämän palauttama lähtö function on merkkijono, koska se palauttaa tiedoston nimen, tälle funktiolle on kaksi argumenttia, jotka ovat polun nimi ja määritteet.

DIR-funktio palauttaa ensimmäisen tiedostonimen määritetylle kansiopolulle. Esimerkiksi D-asemassa, jos sinulla on kansion nimi nimeltä 2019, ja siinä kansiossa, jos excel-tiedosto on nimeltään “2019 Sales”, voit käyttää tätä tiedostoa DIR-toiminnolla.

“VBA DIR” -toiminto on erittäin hyödyllinen haettaessa tiedoston nimi sen polkukansiota käyttämällä.

Syntaksi

Tässä funktiossa on kaksi valinnaista argumenttia.

  • (Polun nimi): Kuten nimessä sanotaan, mikä on tiedoston avaamisen polku. Tämä voi olla myös tiedoston nimi, kansion tai hakemiston nimi. Jos mitään polkua ei ole määritetty, palautan tyhjän merkkijonon arvon, ts.
  • (Attribuutit): Tämä on myös valinnainen argumentti, etkä voi käyttää tätä kovin usein koodauksessa. Voit määrittää tiedoston määritteen kohdassa (Polun nimi), ja DIR-toiminto etsii vain näitä tiedostoja.

Esimerkiksi: Jos haluat käyttää vain piilotettuja tiedostoja, jos haluat käyttää vain luku-tiedostoja jne. … voimme määrittää tässä argumentissa. Alla on määritteet, joita voimme käyttää.

Esimerkkejä VBA DIR -toiminnon käytöstä

Esimerkki # 1 - Tiedostonimen käyttö DIR-toiminnolla

Selitän sinulle yksinkertaisen esimerkin tiedostonimen käyttämisestä DIR-toiminnolla. Seuraa alla olevia ohjeita.

Vaihe 1: Luo makron nimi.

Vaihe 2: Määritä muuttuja merkkijonoksi .

Koodi:

Sub Dir_Example1 () himmentää MyFile-merkkijonoa End Sub

Vaihe 3: Nyt tälle muuttujalle annamme arvon käyttämällä DIR-toimintoa .

Koodi:

Sub Dir_Example1 () Dim MyFile as String MyFile = Dir (End Sub

Vaihe 4: Kopioi ja liitä nyt tiedostokansiopolku tietokoneellesi. Mainitse polun nimi lainausmerkeissä.

Koodi:

Sub Dir_Example1 () Dim MyFile as String MyFile = Dir ("E: VBA Template End Sub

Vaihe 5: Olen maininnut polun kansioon, nyt meidän on mainittava myös tiedoston nimi ja sen laajennus. Voit tehdä tämän ensimmäisen asian, joka meidän on tehtävä, kääntämällä vinoviivan polun jälkeen ()

Kun kirjoitat taaksepäin vinoviivan, meidän on annettava koko tiedostonimi .

Koodi:

Sub Dir_Example1 () Dim MyFile as String MyFile = Dir ("E: VBA Template VBA Dir Excel Template.xlsm") Loppu Sub

Vaihe 6: Näytä muuttujan arvo viestiruudussa.

Koodi:

Sub Dir_Example1 () Dim MyFile as String MyFile = Dir ("E: VBA Template VBA Dir Excel Template.xlsm") MsgBox MyFile End Sub

Suorita nyt koodi ja katso, mikä viesti-kentän tulos on.

Joten DIR-toiminto palautti tiedostonimen tiedostotunnisteella.

Esimerkki # 2 - Avaa tiedosto DIR-toiminnolla

Nyt miten avataan tiedosto? Tämä toiminto voi palauttaa tiedoston nimen, mutta tiedoston avaaminen on hieman erilainen prosessi. Seuraa tiedostoa seuraavasti.

Vaihe 1: Luo kaksi muuttujaa merkkijonoksi .

Koodi:

Sub Dir_Example2 () Himmennä kansion nimi merkkijonona Dim Tiedostonimi merkkijonona End Sub

Vaihe 2: Määritä nyt FolderName- muuttujalle kansion polku.

Koodi:

Sub Dir_Example2 () Himmennä kansion nimi merkkijonona Dim FileName nimellä merkkijono FolderName = "E: VBA-malli " End Sub

Vaihe 3: Nyt FileName-muuttujalle meidän on haettava tiedostonimi DIR-toiminnon avulla .

Koodi:

Ala Dir_Example2 () Himmennä kansion nimi merkkijonona Himmennä FileName nimellä merkkijono FolderName = "E: VBA-malli " Tiedostonimi = Dir (Lopeta ali

Vaihe 4: Polun nimi on nyt jo määritetty polulle muuttujalle FolderPath, joten voimme toimittaa muuttujan suoraan tähän.

Koodi:

Ala Dir_Example2 () Himmennä kansion nimi merkkijonona Himmennä FileName nimellä merkkijono FolderName = "E: VBA-malli " FileName = Suunta (Kansion nimi End Sub

Vaihe 5: Nyt meidän on annettava tiedostonimi. Määritä tiedoston nimi käyttämällä ampersandia (&) .

Koodi:

Sub Dir_Example2() Dim FolderName As String Dim FileName As String FolderName = "E:VBA Template " FileName = Dir(FolderName & "VBA Dir Excel Template.xlsm") End Sub

Step 6: Now use the WORKBOOKS.OPEN method.

Code:

Sub Dir_Example2() Dim FolderName As String Dim FileName As String FolderName = "E:VBA Template " FileName = Dir(FolderName & "VBA Dir Excel Template.xlsm") Workbooks.Open End Sub

Step 7: File Name is a combination of FolderPath & FileName. So combine these two.

Code:

Sub Dir_Example2() Dim FolderName As String Dim FileName As String FolderName = "E:VBA Template " FileName = Dir(FolderName & "VBA Dir Excel Template.xlsm") Workbooks.Open FolderName & FileName End Sub

Now run this code. It will open the mentioned file name.

Example #3 - Multiple Open Workbooks using DIR Function

Actually, we can access all the workbooks in the folder. In order to access each and every file, we cannot mention all the file names directly, but we can use the wildcard character to refer to the file.

The asterisk (*) is one of those wildcard characters. It identifies any number of characters. For example, if you want to access all the macro files in the folder, you can use the asterisk as the wildcard i.e., “*.xlsm*.”

Here * will match any file name with the extension of the file is equal to “xlsm.”

Code:

Sub Dir_Example3() Dim FolderName As String Dim FileName As String FolderName = "E:VBA Template " FileName = Dir(FolderName & "*.xlsm*") Do While FileName "" Workbooks.Open FolderName & FileName FileName = Dir() Loop End Sub

Now the above code will open all the files in the folder path.

FileName = Dir() the reason why I have used this line because, in order to access the next file in the folder, we have to make the existing file name to nil. The moment we make the existing file name to nil when the loop runs for the second time, it will take the next file in the folder.

Example #4 - Get all the File Names in the Folder

Suppose if you want the list of all the file names in the folder, we can also do this by using attributes.

Code:

Sub Dir_Example4 () Himmennä FileName merkkijonona FileName = Dir ("E: VBA-malli ", vbDirectory) Tee, kun FileName "" Virheenkorjaus.

Tee välitön ikkuna näkyviin painamalla Ctrl + G.

Suorita nyt koodi. Saamme kaikki tiedostojen nimet välittömään ikkunaan.

Mielenkiintoisia artikkeleita...