Funkcja DirFunkcja Dir zwraca wartość typu String reprezetującą nazwę pliku, katalogu lub folderu znalezionego wg specyfikacji lub atrybuty pliku lub nazwę wolumenu dysku. Składnia funkcji Dir: Dir [(ŚcieżkaDostępu [, Atrybuty])] Argument ŚcieżkaDostępu jest opcjonalnym wyrażeniem łańcuchowym, określającym nazwę pliku. Może zawierać nazwę katalogu lub folderu i dysk. Jeżeli nie zostanie znaleziona podana ścieżka, zostanie zwrócony łańcuch o zerowej długości (""). Argument Atrybuty jest opjonalny. Jest to suma stałych lub wyrażeń numerycznych, określających atrybuty plików. Jeżeli zostanie pominięty zostaną zwrócone nazwy wszystkich plików znalezionych w podanej ścieżce. Wartości i stałe dostępne dla argumentu Atrybuty:
Stałe te są określone przez Visual Basic for Applications. Funkcja Dir obsługuje znaki wykorzystywane przy wyszukiwaniu wielu plików: wiele znaków (*) i pojedynczy znak (?). Przy pierwszym wywołaniu funkcji Dir należy określić parametr ŚcieżkaDostępu. W przeciwnym przypadku wystąpi błąd. Również, jeżeli podany zostanie argument Atrybuty musi zostać określony argument ŚcieżkaDostępu. Funkcja Dir zwraca pierwszą nazwę pliku znalezionego w podanej ścieżce. Aby pobrać kolejne nazwy plików w podanej ścieżce, należy wywołać ponownie funkcję Dir bez argumentów. Jeżeli nie został znaleziony plik, funkcja Dir zwróci łańcuch o zerowej długości (""). Jeżeli został zwrócony łańcuch o zerowej długości należy określić argument ŚcieżkaDostępu przy następnym wywołaniu funkcji lub powstanie błąd. Można zmienić ścieżkę na inną bez pobierania wszystkich nazw znalezionych plików w poprzedniej ścieżce. Jednak nie zawsze można wywoływać funkcję Dir powtórnie. Wywołanie funkcji Dir dla atrybutu vbDirectory nie będzie ciągle zwracać podkatalogów. Ponieważ nazwy plików nie są zwracane w określonym porządku, można odczytać nazwy plików do tablicy i potem posortować tablicę. Przykład użycia funkcji Dir: Dim varPlik As Variant varPlik=Dir("C:\WINDOWS\WIN.INI") 'zwraca atrybuty pliku WIN.INI varPlik=Dir("*.INI",vbSystem) 'zwraca piewszy znaleziony plik z rozszerzeniem INI i ustawionym atrybutem Archive varPlik=Dir 'zwraca kolejny znaleziony plik varPlik=Dir("C:\",vbDirectory) 'pobranie nazwy katalogu If varPlik<>"." And varPlik<>".." Then 'sprawdzenie czy nie katalog bieżący lub wyższy If (GetAttr("C:\" & varPlik) And vbDirectory) Then 'sprawdzenie czy to katalog 'varPlik jest katalogiem End If End If (Zmienne, typy zmiennych, rozkaz If Else i funkcja GetAttr() zostały opisane w innych częściach kursu.) na górę strony... |