Função VBA Dir

Descrição Dir

Retorna o primeiro nome de arquivo que corresponde ao nome do caminho e aos atributos especificados.

Exemplos Simples de Dir

1 MsgBox Dir ("")

Isso retornará o primeiro nome de arquivo no caminho atual.

Sintaxe de Dir

No Editor VBA, você pode digitar “Dir (” para ver a sintaxe da Função Dir:

A função Dir contém 2 argumentos:

PathName: [Opcional] Uma expressão de string que representa um diretório / pasta / unidade.

Atributo: [Opcional] Especifica os atributos do arquivo. Se omitido, retorna arquivos que correspondem ao nome do caminho, mas não têm atributos.

o Atributo configurações de argumento sã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 do volume; se qualquer outro atributo for especificado,vbVolume é ignorado. Não disponível no Macintosh.
vbDirectory 16 Especifica diretórios ou pastas, além de arquivos sem atributos.
vbAlias 64 O nome do arquivo especificado é um alias. Disponível apenas no Macintosh.

Programação VBA | O Code Generator funciona para você!

Exemplos de função Excel VBA Dir

Para listar as pastas e arquivos na unidade C, você pode usar o código a seguir.

123456789101112131415161718192021222324 Subdir_Exemplo ()Dim fileName As StringDim fullName As StringDim rng como alcanceDim i As IntegerDefinir rng = intervalo ("A1")fileName = Dir ("C: \", vbDirectory)i = 1FazerfullName = "C: \" & fileNamerng.Offset (i, 0) = nome do arquivorng.Offset (i, 1) = FileDateTime (fullName)rng.Offset (i, 2) = FileLen (fullName)rng.Offset (i, 3) = GetAttr (fullName)fileName = DirIf fileName = "" Then Exit Doi = i + 1CicloEnd Sub

O resultado será semelhante ao seguinte.

Função VBA Dir no Access VBA

A função VBA Dir funciona no Access VBA da mesma maneira que no Excel VBA.

123456789 Função CreateDirectory (strP As String) As BooleanSe Len (Dir (strP, vbDirectory)) = 0 ThenMkDir strPFim seCreateDirectory = TrueFunção de saídafinal:CreateDirectory = FalseFunção Final
wave wave wave wave wave