Sisällysluettelo
The DIR toiminto VBA näyttää pääasiassa hakemiston tai tiedostot tietystä kansiosta. Se voi myös palauttaa ensimmäisen tiedoston tällä funktiolla. Tällä funktiolla on paljon käyttötarkoituksia tiettyjen tiedostojen ja kansioiden saamiseksi. Sinun tarvitsee vain lisätä tiedoston polku polkunimeen osoitteessa VBA Koodin käyttäminen voi olla hankalampaa. VBA DIR Älä huoli, tässä artikkelissa näytämme sinulle joitakin esimerkkejä paremmasta visualisoinnista, jotta voit käyttää työkalua VBA DIR Toivottavasti osaat käyttää funktiota artikkelin lukemisen jälkeen. Aloitetaan siis.
Lataa harjoituskirja
Lataa seuraava harjoituskirja, joka auttaa sinua ymmärtämään aihetta paremmin.
DIR-toiminto.xlsmDIR-toiminnon esittely
Yhteenveto:
The VBA DIR palauttaa tiedoston tai hakemiston nimen annetusta kansiopolusta. Tavallisesti se palauttaa ensimmäisen tiedoston.
Syntaksi:
Dir [ (polunnimi, [ attribuutit ] ) ] ]
Argumentit Selitys:
Argumentti | Vaadittava/Vapaaehtoinen | Selitys |
---|---|---|
PathName | Valinnainen | Polku käyttää ja määrittää tiedoston |
Attribuutit | Valinnainen | Vakio tai numeerinen lauseke määrittää vastaavien tiedostojen attribuutit |
On olemassa muutama ennalta määritetty ominaisuus, jotka ovat-
Attribuutin nimi | Kuvaus |
---|---|
vbNormal | Tiedostot, joilla ei ole erityisiä ominaisuuksia |
vbReadOnly | Vain lukuoikeudet sisältävät tiedostot, joissa ei ole attribuutteja |
vbHidden | Piilotetut tiedostot, joilla ei ole attribuutteja |
vbSystem | Järjestelmätiedostot, joilla ei ole attribuutteja |
vbVolume | Äänenvoimakkuuden etiketti |
vbDirectory | Hakemistot tai kansiot, joilla ei ole attribuutteja |
vbAlias | Määritetty tiedostonimi on alias |
7 esimerkkiä VBA DIR -funktion käyttämisestä Excelissä
Kuvauksen perusteella olisit ehkä ymmärtänyt, että VBA DIR funktio antaa tiedoston nimen annetusta polunimestä. Ymmärretään se esimerkin avulla. Tässä olemme luoneet hakemiston nimellä Exceldemy_Folder Tässä kansiossa on erilaisia pieniä kansioita ja tiedostoja.
1. Etsi tiedostonimi polusta
Voimme etsiä tietyn tiedoston kansiostamme ilmoittamalla tiedostonimen polun.
Kun olet kopioinut tiedoston polun, sinun on ajettava koodi.
Tästä syystä siirry osoitteeseen Kehittäjä tab>> pick Visual Basic . Mene sitten osoitteeseen Lisää Valitse välilehti>> Valitse Moduuli. Vuonna Yleistä valintaikkunassa, kirjoitamme koodin.
Koska asialistallamme on löytää Tiedostonimi polunnimestä, asetamme koko polunnimen (tiedostojen juuresta tiedostoon) ja koodimme on seuraava
Sub FileNames() Dim FN As String FN = Dir("E:\Exceldemy\Myynnit_tammikuussa.xlsx") MsgBox FN End Sub
Tässä koodissamme olemme asettaneet polun nimeksi E:\Exceldemy\Myynti_tammikuussa.xlsxx
Koodin erittely:
- Aluksi ilmoitimme merkkijonomuuttujan nimeltä FN . Ja tuloksena on Dir toiminto tallennettiin tähän muuttujaan.
- Seuraavaksi Dir funktio etsii tiedoston nimen ja palauttaa sen annetusta polusta.
- Sitten MsgBox asettaa viestikentän kautta tapahtuvan tulostuksen. MsgBox palauttaa tulosteen viestiruudun avulla.
- Suorita sitten koodi komennolla F5 avain.
Lopuksi olemme löytäneet tiedoston nimeltä Tammikuun_myynti.xlsx .
2. Tarkista hakemiston olemassaolo
Voimme tarkistaa hakemiston olemassaolon käyttämällä komentoa Dir Kirjoitetaan koodi, jolla tarkistetaan, onko funktio Exceldemy kansio on olemassa. Kirjoita seuraava koodi yleiseen laatikkoon ja suorita se komennolla F5 avain.
Sub CheckFile() Dim PN As String Dim File As String PN = "E:\Exceldemy" File = Dir(PN, vbDirectory) If File "" Then MsgBox File & " exists" Else MsgBox "Tiedostoa ei ole olemassa" End If End Sub
Koodin erittely:
- Olemme ilmoittaneet kaksi muuttujaa; PN sisältää tarkistushakemistomme koko polun nimen.
- Täällä sisällä Dir funktiossa olemme asettaneet kaksi arvoa, polunnimen ja attribuutin arvon seuraavasti vbDirectory Tämä attribuutin arvo auttaa tunnistamaan hakemiston. Ja tämän toiminnon tulos tallennetaan tiedostoon Tiedosto muuttuja.
- Sitten tarkistetaan, onko muuttuja tyhjä vai ei. Jos havaitaan, että muuttuja ei ole tyhjä, ilmoitetaan hakemiston olemassaolosta viestiruudussa, muuten paluu ei ole olemassa.
Täällä Exceldemy hakemisto on olemassa, joten löydämme " Exceldemy on olemassa ", jossa Exceldemy on kansion nimi.
3. Luo kansio, jota ei ole olemassa
Voit luoda kansion, jota ei ole olemassa tietokoneellasi. Tätä varten sinun on luotava polkunimi, jota ei ole olemassa kansiossasi. Kuvitellaan, että aiomme luoda hakemiston nimeltä Exceldemy_1 Käytämme MkDir komennolla luodaksemme hakemiston, mutta sitä ennen meidän on kirjoitettava seuraava komento. VBA koodi.
Sub CheckFile() Dim PN As String Dim File As String PN = "E:\Exceldemy_1" File = Dir(PN, vbDirectory) If File "" Then MsgBox File & " Tiedostokansio on olemassa" Else MkDir PN MsgBox "Tiedostokansio on luotu nimellä" & File End If End Sub
Tässä olemme kirjoittaneet komennon, joka luo hakemiston käyttäen polunimeä tiedostosta Else lohko koodissamme. Suorita koodi, jossa on F5 avain.
Hakemisto on luotu. Katsotaanpa hakemistokansiota. The Exceldemy_1 kansio on nyt näkyvissä tietokoneellasi.
Samanlaisia lukemia:
- Kuinka kutsua VBA:n aliohjelma Excelissä (4 esimerkkiä)
- Arvon palauttaminen VBA-funktiossa (sekä array- että muut kuin array-arvot)
- Käytä VBA UCASE -funktiota Excelissä (4 esimerkkiä)
- Kuinka käyttää TRIM-toimintoa VBA: ssa Excelissä (määritelmä + VBA-koodi)
4. Ensimmäisen tiedoston etsiminen hakemistosta
Ensisijainen tehtävä on Dir funktiolla etsitään ensimmäinen tiedosto annetusta hakemistosta. Sinun tarvitsee vain antaa funktiolle polunnimi (säilytyshakemistoon asti), ja se palauttaa ensimmäisen tiedoston kyseisestä hakemistosta.
Etsitään ensimmäinen tiedosto Exceldemy Koodimme on
Sub FirstFileinFolder() Dim FN As String Dim PN As String PN = "E:\Exceldemy\" FN = Dir(PN) MsgBox "Ensimmäinen tiedosto: " & FN End Sub
Näet peruskoodin; olemme siirtäneet polunnimen komentoon Dir toiminto. Nyt Suorita koodi, jossa on F5 näppäintä, löydät ensimmäisen tiedoston tästä hakemistosta.
5. Etsi kaikki tiedostot hakemistosta
Edellisessä osassa näimme, miten hakemiston ensimmäinen tiedostonimi löydetään. Tilanne voi syntyä, kun haluat löytää kaikki tiedostot tietystä hakemistosta. Jos haluat löytää kaikki tiedostot tietystä hakemistosta, sinun on kirjoitettava seuraava komento VBA koodi.
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 ("Tiedostolista:" & FL) End Sub
Tässä on kaksi muuttujaa, jotka tallentavat tiedostonimet yhtenä ( FN ) ja luettelona ( FL ). Do While silmukka iteroi kunnes hakemistossa ei ole enää yhtään tiedostoa, tämän silmukan avulla työnnämme jokaisen tiedoston nimen hakemistoon FL muuttuja.
Suorita koodi, ja löydät kaikki tiedostot hakemistosta, kuten alla olevassa kuvassa.
6. Kaikkien tiedostojen ja kansioiden etsiminen hakemistosta
Olemme maininneet edellisessä osassa, mistä kaikki tiedostot löytyvät. Voimme myös löytää kaikki kansion alikansiot. Kirjoita tätä varten seuraava komento VBA koodi, jonka olemme liittäneet alla olevaan.
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
Muutos koodissamme on vain attribuuttiparametrien käyttö. Olemme käyttäneet komentoa vbDirectory kyseisellä alalla. Suorita koodi, ja löydät kaikki tiedostot ja alikansiot, jotka ovat Exceldemy_Folder .
7. Kaikkien tietyn tyyppisten tiedostojen etsiminen
Käyttämällä VBA Dir funktiolla voimme löytää minkä tahansa tiedostotyypin. Tutustutaanpa esimerkin avulla.
Me löydämme .csv Koodimme on seuraavanlainen-
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 ("Luettelo .csv-tiedostoista:" & FL) End Sub
Toivottavasti olet ymmärtänyt koodin, joka käyttää samanlaista mekanismia tiedostojen etsimiseen. Polunimessä käytimme jokerimerkkiä ( * ). Tämä tähti (*) tarkoittaa, että mikä tahansa merkki mihin tahansa numeroon asti voi esiintyä. Jokerimerkkiä on käytetty siten, että tiedostonimi voi olla mikä tahansa, mutta sen on oltava merkki .csv tiedosto.
Kun suoritat koodin, se palauttaa koodin nimeksi .csv tiedostot meidän Exceldemy hakemisto.
Harjoitusosio
Olemme antaneet harjoitusosion jokaiselle arkille oikealle puolelle harjoitusta varten. Tee se itse.
Päätelmä
Siinä kaikki tämänpäiväisestä istunnosta. Ja nämä ovat muutamia helppoja esimerkkejä siitä, miten VBA Dir funktio Excelissä. Kerro meille kommenttiosioon, jos sinulla on kysyttävää tai ehdotuksia. Parempaa ymmärrystä varten lataa harjoituslomake. Käy verkkosivuillamme, Exceldemy , yhden luukun Excel-ratkaisujen tarjoaja, saadaksesi tietoa erilaisista Excel-menetelmistä. Kiitos kärsivällisyydestäsi tämän artikkelin lukemisessa.