Função Dir

Importante :  Este artigo foi traduzido por um sistema de tradução automática, leia o aviso de isenção de responsabilidade. Para sua referência, veja a versão em inglês deste artigo aqui.

Observação : A função, método, objeto ou propriedade descrito neste tópico será desabilitada se o Microsoft Jet Expression Service está em execução no modo de área restrita, o que impede a avaliação das expressões possivelmente não seguras. Para obter mais informações sobre o modo seguro, procure por "modo seguro" na Ajuda.

Retorna uma cadeia de caracteres que representa o nome de um arquivo, diretório ou pasta que corresponde a um padrão específico ou atributo de arquivo, ou o rótulo de volume de uma unidade.

Sintaxe

Dir [(caminho [atributos] )]

A sintaxe da função Dir possui os seguintes argumentos:

Argumento

Descrição

nome do caminho

Opcional. Expressão em sequência que especifica um nome de arquivo — pode incluir diretório ou pasta e unidade. Uma cadeia de caracteres de comprimento zero ("") é retornado se o caminho não foi encontrado.

atributos

Opcional. Constante ou expressão numérica, cuja soma especifica atributos de arquivo. Se omitido, retorna os arquivos que coincidem caminho , mas não apresentam atributos.


Configurações

As configurações deargumentoatributossão:

Constante

Valor

Descrição

vbNormal

0

(Padrão) Especifica arquivos sem atributos.

vbReadOnly

1

Especifica arquivos somente leitura, além de arquivos sem atributos.

vbHidden

2

Especifica arquivos ocultos além de arquivos sem atributos.

VbSystem

4

Especifica arquivos de sistema, além de arquivos sem atributos. Não disponível no Macintosh.

vbVolume

8

Especifica o rótulo de volume; Se qualquer outro atributo for especificado, vbVolume será ignorada. Não disponível no Macintosh.

vbDirectory

16

Especifica diretórios ou pastas, além de arquivos sem atributos.

vbAlias

64

Nome de arquivo especificado é um alias. Disponível somente no Macintosh.


Observação : Constantes são especificadas pelo Visual Basic for Applications (VBA) e podem ser usados em qualquer lugar no seu código no lugar dos valores reais.

Comentários

No Microsoft Windows, Dir suporta o uso de vários caracteres (*) e caracteres curinga de caractere único (?) para especificar vários arquivos. No Macintosh, esses caracteres são tratados como caracteres de nome de arquivo válido em não podem ser usados como curingas para especificar vários arquivos.

Como o Macintosh não dá suporte os curingas, use o tipo de arquivo para identificar grupos de arquivos. Você pode usar a função MacID para especificar o tipo de arquivo em vez de usar os nomes de arquivo. Por exemplo, a instrução a seguir retorna o nome do arquivo de texto primeiro na pasta atual:

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

Para iteração em todos os arquivos em uma pasta, especifique uma cadeia de caracteres vazia:

Dir("")

Se você usar a função MacID com Dir no Windows, ocorrerá um erro.

Qualquer valor de atributos maior que 256 é considerado um valor de MacID .

Você deve especificar caminho na primeira vez que você ligar para a função Dir ou ocorre um erro. Se você também especificar atributos de arquivo, o caminho deve ser incluído.

Dir retorna o primeiro nome de arquivo que corresponde ao nome do caminho. Para obter os nomes de arquivo adicionais que correspondam caminho, ligue Dir novamente sem argumentos. Quando não há mais nomes de arquivo corresponderem, Dir retorna uma cadeia de comprimento zero (""). Depois que uma cadeia de caracteres de comprimento zero é retornada, você deverá especificar o nome do caminho em chamadas subsequentes ou ocorre um erro. Você pode alterar para um novo nome do caminho sem recuperar todos os nomes de arquivo que coincidem com o nome do caminhodo atual. No entanto, você não pode chamar a repetidamente de função Dir . Chamar Dir com o atributo vbDirectory não retorna subdiretórios continuamente.

Dica     Como nomes de arquivo são recuperados sem uma ordem específica, talvez você queira armazenar nomes de arquivos retornados em uma matriz e, em seguida, classificar a matriz.

Exemplo

Observação : Exemplos a seguir demonstram o uso dessa função em um Visual Basic para módulo Applications (VBA). Para obter mais informações sobre como trabalhar com o VBA, selecione a Referência do desenvolvedor na lista suspensa ao lado de pesquisa e insira um ou mais termos na caixa de pesquisa.

Este exemplo usa a função Dir para verificar se existem determinados arquivos e pastas. No Macintosh, "HD:" é o nome de unidade padrão e partes do caminho são separados por vírgulas em vez de barras invertidas. Além disso, os caracteres curinga de Windows são tratados como caracteres de nome de arquivo válidos no Macintosh. No entanto, você pode usar a função MacID especificar grupos de arquivos.

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

Observação : Aviso de Isenção de Tradução Automática: Este artigo foi traduzido por computador, sem intervenção humana. A Microsoft oferece essas traduções automáticas para ajudar as pessoas que não falam inglês a aproveitar os textos escritos sobre produtos, serviços e tecnologias da Microsoft. Como este artigo foi traduzido automaticamente, é possível que contenha erros de vocabulário, sintaxe ou gramática.

Expanda suas habilidades
Explore o treinamento
Obtenha novos recursos primeiro
Ingressar no Office Insider

Essas informações foram úteis?

Obrigado por seus comentários!

Agradecemos pelos seus comentários! Parece que pode ser útil conectar você a um de nossos agentes de suporte do Office.

×