Funcția Dir

Important : Acest articol este tradus automat, consultați exonerarea de răspundere. Versiunea în limba engleză a acestui articol se poate găsi aici pentru referință.

Notă : Funcția, metodă, obiecte sau proprietăți cum este descris în acest subiect este dezactivat dacă serviciul de expresie Microsoft Jet se execută în modul sandbox, ceea ce împiedică evaluarea expresii potențial nesigure. Pentru mai multe informații despre modul sandbox, căutați "modul sandbox" în ajutor.

Returnează un șir care reprezintă numele un fișier, Director, sau un folder care se potrivește cu un model specificat sau atribut de fișier sau eticheta de volum de o unitate.

Sintaxă

Dir [(nume cale [atributele] )]

Sintaxa funcției Dir are următoarele argumente:

Argument

Descriere

nume de cale

Opțional. Șir expresie care specifică un nume de fișier, pot include directorului sau folderului, și unitate. Un șir de lungime zero ("") se returnează dacă nume cale nu este găsit.

atributele

Opțional. Constantă sau expresie numerică, a cărui suma specifică atributele fișierului. Dacă se omite, se returnează fișierele care se potrivesc cu nume de cale , dar care au atribute nu.


Setări

Setările deargumentatributesunt:

Constantă

Valoare

Descriere

vbNormal

0

(Implicit) Specifică fișierele cu atributele fără.

vbReadOnly

1

Specifică fișiere doar în citire în plus față de fișiere cu atributele fără.

vbHidden

2

Specifică fișierele ascunse în plus față de fișiere cu atributele fără.

VbSystem

4

Specifică sistemul de fișiere în plus față de fișiere cu atributele fără. Nu este disponibilă pe Macintosh.

vbVolume

8

Specifică eticheta de volum; Dacă orice alte atribuite este specificat, vbVolume este ignorată. Nu este disponibilă pe Macintosh.

vbDirectory

16

Specifică directoare sau foldere în plus față de fișiere cu atributele fără.

vbAlias

64

Nume de fișier specificat este un alias. Disponibil numai pe Macintosh.


Notă : Aceste constante sunt specificate de Visual Basic for Applications (VBA) și poate fi utilizat oriunde în codul în locul valorilor propriu-zise.

Observații

În Microsoft Windows, Dir acceptă utilizarea mai multor caractere (*) și un singur caracter (?) metacaractere pentru a specifica mai multe fișiere. Macintosh, aceste caractere sunt tratate ca caracterele din numele de fișier valid și nu pot fi utilizate ca metacaractere pentru a specifica mai multe fișiere.

Deoarece Macintosh nu acceptă metacaractere, utilizați tipul de fișier pentru a identifica grupuri de fișiere. Utilizați funcția MacID pentru a specifica tipul de fișier în loc să utilizați numele de fișier. De exemplu, următoarea declarație returnează numele fișierului TEXT prima din folderul curent:

Dir("SomePath", MacID("TEXT"))

Pentru a repeta peste toate fișierele într-un folder, specificați un șir gol:

Dir("")

Dacă utilizați funcția MacID cu Dir în Windows, apare o eroare.

Atributele orice valoare mai mare de 256 este considerat o valoare MacID .

Trebuie să specificați nume cale prima dată când apelați funcția Dir sau se produce o eroare. Dacă, de asemenea, puteți specifica atributele fișierului, nume de cale trebuie să fie incluse în calcule.

Dir returnează primul nume de fișier care se potrivește cu nume de cale. Pentru a accesa orice nume de fișier suplimentare care se potrivesc cu nume de cale, apelați Dir din nou fără argumente. Atunci când nu mai multe nume de fișier se potrivesc cu Dir returnează un șir de lungime zero (""). După ce se returnează un șir de lungime zero, trebuie să specificați nume cale din apelurile ulterioare efectuate sau se produce o eroare. Puteți să modificați la un nou nume de cale fără regăsește toate numele de fișier care se potrivesc cu curent nume cale. Cu toate acestea, nu puteți apela Dir funcția recursiv. Apelarea Dir cu atributul vbDirectory nu continuu returnează subdirectoarele.

Sfat     Pentru că numele de fișiere sunt regăsite într-o anumită ordine, se recomandă să stocați numele de returnat fișiere într-o matriceși apoi sortați din matrice.

Exemplu

Notă : Exemplele care urmează demonstrează utilizarea acestei funcții într-un modul Visual Basic for Applications (VBA). Pentru mai multe informații despre lucrul cu VBA, selectați Referințe pentru dezvoltatori în lista verticală de lângă Căutare și introduceți unul sau mai mulți termeni în caseta de căutare.

Acest exemplu utilizează funcția Dir pentru a verifica dacă anumite fișiere și directoare există. Macintosh, "HD:" este numele implicit de unitate și porțiuni de nume de cale sunt separate prin puncte în loc de bare oblice inverse. De asemenea, metacaractere Windows sunt tratate ca caractere valide numele fișierului pe Macintosh. Cu toate acestea, utilizați funcția MacID pentru a specifica fișier grupuri.

Dim MyFile, MyPath, MyName
' Returns "WIN.INI" (on Microsoft Windows) if it exists.
MyFile = Dir("C:\WINDOWS\WIN.INI")
' Returns filename with specified extension. If more than one *.ini
' file exists, the first file found is returned.
MyFile = Dir("C:\WINDOWS\*.INI")
' Call Dir again without arguments to return the next *.INI file in the
' same directory.
MyFile = Dir
' Return first *.TXT file with a set hidden attribute.
MyFile = Dir("*.TXT", vbHidden)
' Display the names in C:\ that represent directories.
MyPath = "c:\" ' Set the path.
MyName = Dir(MyPath, vbDirectory) ' Retrieve the first entry.
Do While MyName <> "" ' Start the loop.
' Ignore the current directory and the encompassing directory.
If MyName <> "." And MyName <> ".." Then
' Use bitwise comparison to make sure MyName is a directory.
If (GetAttr(MyPath & MyName) And vbDirectory) = vbDirectory Then
Debug.Print MyName ' Display entry only if it
End If ' it represents a directory.
End If
MyName = Dir ' Get next entry.
Loop

Notă : Exonerare de răspundere pentru traducere automată: Acest articol a fost tradus de un sistem computerizat, fără intervenție umană. Microsoft oferă aceste traduceri automate pentru a ajuta utilizatorii vorbitori de alte limbi decât engleza să beneficieze de conținutul despre produsele, serviciile și tehnologiile Microsoft. Pentru că articolul a fost tradus de un computer, poate conține erori de vocabular, sintaxă sau gramatică.

Extindeți-vă competențele
Explorați instruirea
Fiți primul care obține noile caracteristici
Alăturați-vă utilizatorilor Office Insider

Au fost utile aceste informații?

Vă mulțumim pentru feedback!

Vă mulțumim pentru feedback! Se pare că ar fi util să luați legătura cu unul dintre agenții noștri de asistență Office.

×