Funkce Dir

Poznámka: Funkce, metoda, objekt nebo vlastnost popsaná v tomto tématu je zakázaná, pokud je služba Microsoft Jet Expression Service spuštěná v režimu izolovaného prostoru (sandbox), což brání vyhodnocení potenciálně nebezpečných výrazů. Další informace o režimu izolovaného prostoru najdete v nápovědě k režimu izolovaného prostoru.

Vrátí řetězec představující název souboru, adresáře nebo složky, které odpovídají zadanému vzoru nebo atributu souboru, nebo popisek hlasitosti jednotky.

Syntaxe

Dir[(cesta [, atributy] )]

Syntaxe funkce Dir obsahuje tyto argumenty:

Argument

Popis

cesta

Nepovinný argument. Řetězcový výraz určující název souboru – může obsahovat adresář nebo složku a jednotku. Pokud se cesta nenašle, vrátí se řetězec nulové délky ("").

atributy

Nepovinný argument. Konstanta nebo Číselný výraz, jejichž součet určuje atributy souboru. Pokud je tento parametr vynechán, vrátí soubory, které odpovídají názvu cesty, ale nemají žádné atributy.


Nastavení

Atributy, Argument mají toto nastavení:

Konstanta

Hodnota

Popis

vbNormal

0

(Výchozí) Určuje soubory bez atributů.

vbReadOnly

1

Určuje kromě souborů bez atributů také soubory jen pro čtení.

vbHidden

2

Určuje kromě souborů bez atributů i skryté soubory.

VbSystem

4

Určuje kromě souborů, které nemají atributy, také systémové soubory. Není dostupné na platformě Macintosh.

vbVolume

8

Určuje popisek svazku. pokud je zadaný nějaký jiný atribut, ignoruje se vbVolume. Není dostupné na platformě Macintosh.

vbDirectory

16

Určuje kromě souborů bez atributů také adresáře nebo složky.

vbAlias

64

Zadaný název souboru je alias. K dispozici pouze pro Macintosh.


Poznámka:  Tyto konstanty jsou určené jazykem Visual Basic for Applications (VBA) a lze je použít kdekoli v kódu místo skutečných hodnot.

Poznámky

V systému Microsoft Windows podporuje nástroj Dir při zadávání více souborů použití více znaků (*) a jednoho znaku (?). Na platformě Macintosh jsou tyto znaky považovány za platné znaky názvů souborů a nelze je použít jako zástupné znaky k zadání více souborů.

Vzhledem k tomu, že Macintosh nepodporuje zástupné znaky, použijte k identifikaci skupin souborů typ souboru. K zadání typu souboru můžete místo názvů souborů použít funkci MacID. Například následující příkaz vrátí název prvního textového souboru v aktuální složce:

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

Pokud chcete iterovat všechny soubory ve složce, zadejte prázdný řetězec:

Dir("")

Pokud použijete funkci MacID s funkcí Dir ve Windows, dojde k chybě.

Všechny atributy s hodnotou větší než 256 se považují za hodnotu MacID.

Cestu je třeba zadat při prvním volání funkce Dir nebo dojde k chybě. Pokud zadáte také atributy souboru, musí být zahrnuta cesta.

Dir vrátí první název souboru, který odpovídá názvu cesty. Pokud chcete získat další názvy souborů, které odpovídají názvu cesty,zavolejte nástroj Dir znovu bez argumentů. Pokud se neshodují žádné další názvy souborů, vrátí funkce Dir řetězec nulové délky (""). Jakmile se vrátí řetězec nulové délky, musíte v dalších hovorech zadat cestu nebo dojde k chybě. Můžete změnit na novou cestu bez načtení všech názvů souborů, které odpovídají názvu aktuální cesty. Funkci Dir ale nemůžete volat rekurzivním způsobem. Calling Dir with the vbDirectory attribute does notcontinually return subdirectories.

Tip     Vzhledem k tomu, že se názvy souborů načítá v žádném konkrétním pořadí, je možné, že budete chtít uložit vrácené názvy souborů Matice a potom matici seřadit.

Příklad

Poznámka: Následující příklady ukazují použití této funkce v modulu VBA (Visual Basic pro Applications). Pokud chcete další informace o práci s modulem VBA, vyberte Referenční informace pro vývojáře, které najdete v rozevíracím seznamu vedle položky Hledat a do vyhledávacího pole napište požadované pojmy.

V tomto příkladu se pomocí funkce Dir zkontroluje, jestli existují určité soubory a adresáře. Na Macintoshi je výchozí název jednotky "HD:" a části názvu cesty jsou místo zpětného lomítka oddělené dvojtečkami. Zástupné znaky systému Windows jsou také považovány za platné znaky názvů souborů na platformě Macintosh. K určení skupin souborů ale můžete použít funkci MacID.

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

Potřebujete další pomoc?

Rozšiřte své dovednosti s Office
Projít školení
Získejte nové funkce jako první
Připojte se k účastníkům programu Office Insiders

Byly tyto informace užitečné?

Děkujeme vám za zpětnou vazbu.

Děkujeme vám za váš názor! Pravděpodobně bude užitečné, když vás spojíme s některým z našich agentů podpory Office.

×