Função GetAttr do VBA

Descrição GetAttr

Retorna um número inteiro que representa os atributos de um arquivo, pasta ou diretório.

Exemplos GetAttr Simples

12 MsgBox GetAttr ("C: \")MsgBox GetAttr ("D: \ Test.txt")

Isso retornará algum número inteiro de acordo com as configurações do arquivo / pasta / unidade.

Se o nome do caminho não existir, ocorrerá um erro em tempo de execução '53': Arquivo não encontrado.

Sintaxe GetAttr

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

A função GetAttr contém um argumento:

PathName: Uma expressão de string que representa um arquivo / pasta / unidade.

Valores de retorno

O valor retornado porGetAttr é a soma dos seguintes valores de atributo:

Constante Valor Descrição
vbNormal 0 Normal.
vbReadOnly 1 Somente leitura.
vbHidden 2 Escondido.
vbSystem 4 Arquivo de sistema. Não disponível no Macintosh.
vbDirectory 16 Diretório ou pasta.
vbArchive 32 O arquivo foi alterado desde o último backup. Não disponível no Macintosh.
vbAlias 64 O nome do arquivo especificado é um alias. Disponível apenas no Macintosh.

Exemplos de função Excel VBA GetAttr

1 MsgBox GetAttr ("C: \ Arquivos de programas (x86)")
1 MsgBox GetAttr ("C: \")

Durante o teste com várias pastas / arquivos / unidades, ele retornará vários números como 1, 2, 5, 22 e assim por diante.

Por exemplo, no caso de 22, significa vbDirectory (16) + vbSystem (4) + vbHidden (2).

Para obter as configurações de atributos correspondentes a cada número, você pode usar a seguinte função.

12345678910111213 Função GetAttributeSettings (attr As VbFileAttribute) As StringDim strSettings As StringstrSettings = ""If (attr E vbDirectory) = vbDirectory Then strSettings = strSettings & "& Directory"If (attr E vbVolume) = vbVolume Then strSettings = strSettings & "& Volumn"If (attr E vbAlias) = ​​vbAlias ​​Then strSettings = strSettings & "& Alias"If (attr E vbArchive) = vbArchive Then strSettings = strSettings & "& Archive"If (attr E vbHidden) = vbHidden Then strSettings = strSettings & "& Hidden"If (attr And vbReadOnly) = vbReadOnly Then strSettings = strSettings & "& ReadOnly"If (attr E vbSystem) = vbSystem Then strSettings = strSettings & "& System"GetAttributeSettings = Mid (strSettings, 2)Função Final
1 MsgBox GetAttributeSettings (22)

Resultado: “Directory & Hidden & System”

Você vai ajudar o desenvolvimento do site, compartilhando a página com seus amigos

wave wave wave wave wave