Applies ToAccess dla Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Uwaga: Funkcja, metoda, obiekt lub właściwość opisana w tym temacie jest wyłączona, jeśli usługa wyrażeń Microsoft Jet działa w trybie piaskownicy, co uniemożliwia oszacowanie potencjalnie niebezpiecznych wyrażeń. Aby uzyskać więcej informacji na temat trybu piaskownicy, wyszukaj "tryb piaskownicy" w Pomocy.

Zwraca ciąg reprezentujący nazwę pliku, katalogu lub folderu zgodnego z określonym wzorcem lub atrybutem pliku albo etykietę woluminu dysku.

Składnia

Dir[(nazwa_ścieżki [, atrybuty] )]

W składni funkcji Dir występują następujące argumenty:

Argument

Opis

Nazwa_ścieżki

Argument opcjonalny. Wyrażenie ciągu określające nazwę pliku — może obejmować katalog lub folder oraz dysk. Jeśli nazwa ścieżki nie zostanie odnaleziona, zostanie zwrócony ciąg znaków o zerowej długości ("").

Atrybuty

Argument opcjonalny. Stała lub wyrażenie numeryczne, której suma określa atrybuty pliku. Jeśli zostanie pominięty, zwraca pliki zgodne z nazwą ścieżki , ale nie mają atrybutów.

Ustawienia

Atrybuty argument ustawień to:

Stała

Value (Wartość)

Opis

vbNormal

0

(Domyślne) Określa pliki bez atrybutów.

vbReadOnly

1

Określa pliki tylko do odczytu oprócz plików bez atrybutów.

vbHidden

2

Określa ukryte pliki oprócz plików bez atrybutów.

VbSystem

4

Określa pliki systemowe oprócz plików bez atrybutów. Niedostępne na komputerze Macintosh.

vbVolume

8

Określa etykietę woluminu; jeśli określono jakiekolwiek inne przypisania, vbVolume jest ignorowane . Niedostępne na komputerze Macintosh.

vbDirectory

16

Określa katalogi lub foldery oprócz plików bez atrybutów.

vbAlias

64

Określona nazwa pliku to alias. Dostępne tylko na komputerze Macintosh.

Uwaga:  Stałe te są określane przez Visual Basic for Applications (VBA) i mogą być używane w dowolnym miejscu kodu w miejsce rzeczywistych wartości.

Uwagi

W systemie Microsoft Windows narzędzie Dir obsługuje używanie symboli wieloznacznych z wieloma znakami (*) i pojedynczymi znakami (?) w celu określenia wielu plików. Na komputerze Macintosh te znaki są traktowane jako prawidłowe znaki nazw plików i nie można ich używać jako symboli wieloznacznych w celu określenia wielu plików.

Ponieważ program Macintosh nie obsługuje symboli wieloznacznych, należy użyć tego typu pliku do identyfikowania grup plików. Za pomocą funkcji MacID można określić typ pliku zamiast nazw plików. Na przykład poniższa instrukcja zwraca nazwę pierwszego pliku TEXT w bieżącym folderze:

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

Aby iterować wszystkie pliki w folderze, określ pusty ciąg:

Dir("")

Jeśli używasz funkcji MacID z funkcją Dir w systemie Windows, występuje błąd.

Każda wartość atrybutów większa niż 256 jest uznawana za wartość MacID .

Nazwę ścieżki należy określić podczas pierwszego wywoływania funkcji Dir lub wystąpienia błędu. Jeśli określisz również atrybuty pliku, nazwa ścieżki musi zostać uwzględniona.

Funkcja Dir zwraca pierwszą nazwę pliku zgodną z nazwą ścieżki. Aby uzyskać dodatkowe nazwy plików zgodne z nazwą ścieżki, ponownie wywołaj Dir bez argumentów. Gdy żadne nazwy plików nie są zgodne, funkcja Dir zwraca ciąg znaków o zerowej długości (""). Po zwróceniu ciągu o zerowej długości należy określić nazwę ścieżki w kolejnych wywołaniach lub wystąpi błąd. Możesz zmienić nazwę ścieżki na nową bez pobierania wszystkich nazw plików zgodnych z bieżącą nazwą ścieżki. Nie można jednak rekurencyjnie wywoływać funkcji Dir . Wywołanie Dir z atrybutem vbDirectory nie zwraca stale podkatalogi.

Porada     Ponieważ nazwy plików są pobierane w określonej kolejności, warto przechowywać zwrócone nazwy plików w tablica, a następnie posortować tablicę.

Przykład

Uwaga: Poniższe przykłady przedstawiają sposób użycia tej funkcji w module języka Visual Basic for Applications (VBA). Aby uzyskać dodatkowe informacje na temat pracy w języku VBA, wybierz pozycję Dokumentacja dewelopera z listy rozwijanej obok przycisku Wyszukaj i wprowadź odpowiednie terminy w polu wyszukiwania.

W tym przykładzie użyto funkcji Dir do sprawdzenia, czy istnieją określone pliki i katalogi. Na komputerze Macintosh domyślna nazwa dysku to "HD:", a fragmenty nazwy ścieżki są rozdzielone dwukropkami, a nie ukośnikami odwrotnymi. Ponadto symbole wieloznaczne systemu Windows są traktowane jako prawidłowe znaki nazw plików na komputerze Macintosh. Za pomocą funkcji MacID można jednak określić grupy plików.

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

Potrzebujesz dalszej pomocy?

Chcesz uzyskać więcej opcji?

Poznaj korzyści z subskrypcji, przeglądaj kursy szkoleniowe, dowiedz się, jak zabezpieczyć urządzenie i nie tylko.

Społeczności pomagają zadawać i odpowiadać na pytania, przekazywać opinie i słuchać ekspertów z bogatą wiedzą.