Dir Beschrijving:
Retourneert de eerste bestandsnaam die overeenkomt met de opgegeven padnaam en kenmerken.
Eenvoudige Dir-voorbeelden
1 | MsgBox-map("") |
Hiermee wordt de eerste bestandsnaam op het huidige pad geretourneerd.
Dir-syntaxis
In de VBA-editor kunt u "Dir(" typen om de syntaxis voor de Dir-functie te zien:
De Dir-functie bevat 2 argumenten:
Padnaam: [Optioneel] Een tekenreeksexpressie die een map/map/station vertegenwoordigt.
Attribuut: [Optioneel] Specificeert bestandskenmerken. Indien weggelaten, worden bestanden geretourneerd die overeenkomen met padnaam maar geen kenmerken hebben.
De Attribuut argument instellingen zijn:
Constante | Waarde | Beschrijving |
---|---|---|
vbNormaal | 0 | (Standaard) Specificeert bestanden zonder attributen. |
vbAlleen-lezen | 1 | Specificeert alleen-lezen bestanden naast bestanden zonder attributen. |
vbVerborgen | 2 | Specificeert verborgen bestanden naast bestanden zonder attributen. |
vbSysteem | 4 | Specificeert systeembestanden naast bestanden zonder attributen. Niet beschikbaar op de Macintosh. |
vbVolume | 8 | Specificeert volumelabel; als een ander kenmerk is opgegeven,vbVolume wordt genegeerd. Niet beschikbaar op de Macintosh. |
vbDirectory | 16 | Specificeert mappen of mappen naast bestanden zonder attributen. |
vbAlias | 64 | De opgegeven bestandsnaam is een alias. Alleen beschikbaar op de Macintosh. |
VBA-programmering | Code Generator werkt voor u!
Voorbeelden van Excel VBA Dir-functie
Om de mappen en bestanden op de C-schijf weer te geven, kunt u de volgende code gebruiken.
123456789101112131415161718192021222324 | Sub Dir_Example()Dim bestandsnaam als stringVolledige naam dimmen als stringDim rng als bereikDim ik als geheel getalStel rng = Bereik ("A1") infileName = Dir("C:\", vbDirectory)ik = 1DoenfullName = "C:\" & bestandsnaamrng.Offset(i, 0) = bestandsnaamrng.Offset(i, 1) = FileDateTime(fullName)rng.Offset(i, 2) = FileLen(volledige naam)rng.Offset(i, 3) = GetAttr(volledigeNaam)bestandsnaam = mapIf fileName = "" Dan Afsluiten Doik = ik + 1LusEinde sub |
Het resultaat zal vergelijkbaar zijn met het volgende.
VBA Dir-functie in Access VBA
De VBA Dir-functie werkt in Access VBA op dezelfde manier als in Excel VBA.
123456789 | Functie CreateDirectory(strP As String) As BooleanAls Len(Dir(strP, vbDirectory)) = 0 DanMkDir strPStop alsCreateDirectory = TrueFunctie verlateneinde:CreateDirectory = FalseFunctie beëindigen |