VBA DIR -toiminto | Kuinka käyttää Excel VBA DIR -toimintoa?
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-asemalla, jos sinulla on kansion nimi nimeltä 2019, ja siinä kansiossa, jos excel-tiedosto on nimeltään “2019 Sales”, pääset tähän tiedostoon DIR-toiminnolla.
“VBA DIR” -toiminto on erittäin hyödyllinen tiedoston nimen saamiseksi sen polkukansiota käyttämällä.
Syntaksi
Tässä funktiossa on kaksi valinnaista argumenttia.
- [Polun nimi]: Kun nimi kertoo, mikä polku tiedostoon pääsee. 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 eli ""
- [Attribuutit]: Tämä on myös valinnainen argumentti, etkä voi käyttää tätä kovin usein koodauksessa. Voit määrittää tiedoston määritteen [Polun nimi] -kohdassa, ja DIR-toiminto etsii vain niitä 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ä
Voit ladata tämän VBA Dir Excel -mallin täältä - VBA Dir Excel -malliEsimerkki # 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 annamme tälle muuttujalle 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 tiedostokansion polku 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") End 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 tiedostonimen, 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 \" FileName = Suunta (Lopeta ali
Vaihe 4: Nyt polun nimi on 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 = Dir (Kansion nimi End Sub
Vaihe 5: Nyt meidän on annettava tiedostonimi. Määritä tiedoston nimi käyttämällä ampersandia (&) .
Koodi:
Ala Dir_Example2 () Himmennä kansion nimi merkkijonona Himmennä FileName nimellä merkkijono FolderName = "E: \ VBA-malli \" FileName = Dir (kansion nimi ja "VBA Dir Excel -malli.xlsm") Loppu ali
Vaihe 6: Käytä nyt WORKBOOKS.OPEN- menetelmää.
Koodi:
Sub Dir_Example2 () Himmennä FolderName merkkijonona Dim FileName As String FolderName = "E: \ VBA-malli \" FileName = Dir (FolderName & "VBA Dir Excel Template.xlsm") -työkirjat.Open End Sub
Vaihe 7: Tiedostonimi on FolderPath & FileName -yhdistelmä . Joten yhdistä nämä kaksi.
Koodi:
Ala Dir_Example2 () Himmennä kansion nimi merkkijonona Himmennä FileName nimellä merkkijono FolderName = "E: \ VBA-malli \" FileName = Dir (Kansion nimi ja "VBA Dir Excel -malli.xlsm") Työkirjat. Avaa kansion nimi ja tiedostonimi End Sub
Suorita nyt tämä koodi. Se avaa mainitun tiedoston nimen.
Esimerkki # 3 - Avaa useita työkirjoja DIR-toiminnolla
Itse asiassa voimme käyttää kaikkia kansion työkirjoja. Jotta pääsemme jokaiseen tiedostoon, emme voi mainita kaikkia tiedostojen nimiä suoraan, mutta voimme käyttää jokerimerkkiä viittaamaan tiedostoon.
Tähti (*) on yksi niistä jokerimerkkeistä. Se tunnistaa minkä tahansa määrän merkkejä. Esimerkiksi, jos haluat käyttää kaikkia kansiossa olevia makrotiedostoja, voit käyttää tähtiä jokerimerkkinä eli "* .xlsm *"
Tässä * vastaa mitä tahansa tiedostonimeä, ja tiedoston laajennus on yhtä suuri kuin ”xlsm”.
Koodi:
Sub Dir_Example3 () Himmennä FolderName merkkijonona Dim FileName As String FolderName = "E: \ VBA-malli \" FileName = Dir (FolderName & "* .xlsm *") Tee, kun FileName "" Työkirjat.Avaa FolderName & FileName FileName = Dir ( ) Silmukan loppuosa
Nyt yllä oleva koodi avaa kaikki tiedostot kansiopolulla.
FileName = Dir () syy, miksi olen käyttänyt tätä riviä, koska pääsemään seuraavaan kansiossa olevaan tiedostoon meidän on tehtävä olemassa oleva tiedostonimi nollaksi. Tällä hetkellä, kun nykyinen tiedostonimi nollataan, kun silmukka suoritetaan toisen kerran, se vie seuraavan tiedoston kansioon.
Esimerkki # 4 - Hae kaikki kansiossa olevat tiedostonimet
Oletetaan, että jos haluat luettelon kaikista kansion tiedostojen nimistä, voimme tehdä sen myös attribuuttien avulla.
Koodi:
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, niin saamme kaikki tiedostonimet välittömässä ikkunassa.