Nápověda LibreOffice 24.8
Vrátí jméno souboru, adresáře nebo všech souborů a adresářů jednotky nebo adresáře, který splňuje zadanou vyhledávací podmínku.
Dir [(PathName As String [, Attributes As Integer])]
Řetězec
PathName: Řetězec určující hledanou cestu, adresář nebo soubor. Tento argument je možné určit jen při prvním volání funkce Dir. Pokud chcete, je možné zadat cestu v URL notaci.
Attributes: Celočíselný výraz určující atributy souboru. Funkce Dir vrací jen soubory nebo adresáře, které odpovídají určeným atributům. Několik atributů je možné zkombinovat, když sečtete jejich hodnoty:
0 : Normální soubory
16 : Vrátí pouze název adresáře.
Tímto atributem ověříte, zda soubor nebo adresář existuje, nebo určíte všechny soubory a složky v určitém adresáři.
Chcete-li zjistit, zda soubor existuje, zadejte kompletní cestu a název souboru. Pokud soubor nebo adresář neexistuje, funkce Dir vrátí prázdný řetězec ("").
Chcete-li vygenerovat seznam všech existujících souborů v určitém adresáři, postupujte takto: poprvé zavolejte funkci Dir s kompletní vyhledávací cestou pro soubory, např. "D:\Files\*.ods". Je-li cesta správná a vyhledávání nalezne alespoň jeden soubor, funkce Dir vrátí název prvního souboru, který odpovídá cestě. Další názvy souborů získáte opětovným voláním funkce Dir, ovšem bez argumentů.
Chcete-li vrátit jen adresáře, použijte parametr atributů. To stejné platí, pokud chcete určit název jednotky (např. pevného disku).
Sub ExampleDir
' Zobrazí všechny soubory a adresáře
Dim sPath As String
Dim sDir As String, sValue As String
sDir="Adresáře:"
sPath = CurDir
sValue = Dir$(sPath + getPathSeparator + "*",16)
Do
If sValue <> "." And sValue <> ".." Then
If (GetAttr( sPath + getPathSeparator + sValue) And 16) >0 Then
' Načtení adresářů
sDir = sDir & chr(13) & sValue
End If
End If
sValue = Dir$
Loop Until sValue = ""
MsgBox sDir,0,sPath
End Sub