GetAttr Descrizione
Restituisce un numero intero che rappresenta gli attributi di un file, cartella o directory.
Semplici esempi GetAttr
12 | MsgBox GetAttr("C:\")MsgBox GetAttr("D:\Test.txt") |
Questo restituirà un numero intero in base alle impostazioni del file/cartella/unità.
Se il nome del percorso non esiste, si verificherà un errore di runtime '53': File non trovato.
Sintassi GetAttr
Nell'editor VBA, puoi digitare "GetAttr(" per vedere la sintassi per la funzione GetAttr:
La funzione GetAttr contiene un argomento:
Nome percorso: Un'espressione stringa che rappresenta un file/cartella/unità.
Valori di ritorno
Il valore restituito daGetAttr è la somma dei seguenti valori di attributo:
Costante | Valore | Descrizione |
---|---|---|
vbnormale | 0 | Normale. |
vbReadOnly | 1 | Sola lettura. |
vbHidden | 2 | Nascosto. |
vbSystem | 4 | File di sistema. Non disponibile su Macintosh. |
vbDirectory | 16 | Directory o cartella. |
vbArchive | 32 | Il file è cambiato dall'ultimo backup. Non disponibile su Macintosh. |
vbAlias | 64 | Il nome file specificato è un alias. Disponibile solo su Macintosh. |
Esempi di funzione GetAttr VBA di Excel
1 | MsgBox GetAttr("C:\Programmi (x86)") |
1 | MsgBox GetAttr("C:\") |
Durante il test con varie cartelle/file/unità, restituirà vari numeri come 1, 2, 5, 22 e così via.
Ad esempio, in caso di 22, significa vbDirectory(16) + vbSystem(4) + vbHidden(2).
Per ottenere le impostazioni degli attributi corrispondenti a ciascun numero, è possibile utilizzare la seguente funzione.
12345678910111213 | Funzione GetAttributeSettings(attr As VbFileAttribute) As StringDim strSettings As StringstrSettings = ""If (attr And vbDirectory) = vbDirectory Then strSettings = strSettings & "&Directory"If (attr And vbVolume) = vbVolume Then strSettings = strSettings & "&Volumn"If (attr And vbAlias) = vbAlias Then strSettings = strSettings & "&Alias"If (attr And vbArchive) = vbArchive Then strSettings = strSettings & "&Archive"If (attr And vbHidden) = vbHidden Then strSettings = strSettings & "&Hidden"If (attr And vbReadOnly) = vbReadOnly Then strSettings = strSettings & "&ReadOnly"If (attr And vbSystem) = vbSystem Then strSettings = strSettings & "&System"GetAttributeSettings = Mid(strSettings, 2)Fine funzione |
1 | MsgBox GetAttributeSettings(22) |
Risultato: "Directory&Nascosta&Sistema"