Popis GetAttr
Vráti celé číslo, ktoré predstavuje atribúty súboru, priečinka alebo adresára.
Jednoduché príklady GetAttr
12 | MsgBox GetAttr ("C: \")MsgBox GetAttr ("D: \ Test.txt") |
Vráti sa tým celé číslo podľa nastavení súboru/priečinka/disku.
Ak názov cesty neexistuje, vyskytne sa chyba pri spustení „53“: Súbor nebol nájdený.
Syntax GetAttr
V editore VBA môžete zadaním „GetAttr (“ zobraziť syntax funkcie GetAttr:
Funkcia GetAttr obsahuje argument:
Názov cesty: Reťazcový výraz predstavujúci súbor/priečinok/jednotku.
Návratové hodnoty
Hodnota vrátená používateľomGetAttr je súčet nasledujúcich hodnôt atribútov:
Konštantný | Hodnota | Popis |
---|---|---|
vbNormálne | 0 | Normálne. |
vbReadOnly | 1 | Iba na čítanie. |
vbSkryté | 2 | Skryté. |
vbSystem | 4 | Systémový súbor. Nie je k dispozícii na počítačoch Macintosh. |
vbDirectory | 16 | Adresár alebo priečinok. |
vbArchív | 32 | Súbor sa od poslednej zálohy zmenil. Nie je k dispozícii na počítačoch Macintosh. |
vbAlias | 64 | Zadaný názov súboru je alias. K dispozícii iba na počítačoch Macintosh. |
Príklady funkcie Excel VBA GetAttr
1 | MsgBox GetAttr ("C: \ Program Files (x86)") |
1 | MsgBox GetAttr ("C: \") |
Pri testovaní s rôznymi zložkami/súbormi/jednotkami vráti rôzne čísla ako 1, 2, 5, 22 a podobne.
Napríklad v prípade 22 to znamená vbDirectory (16) + vbSystem (4) + vbHidden (2).
Ak chcete získať nastavenia atribútov zodpovedajúce každému číslu, môžete použiť nasledujúcu funkciu.
12345678910111213 | Funkcia GetAttributeSettings (attr As VbFileAttribute) ako reťazecDim strSettings ako reťazecstrSettings = ""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 = stredný (strSettings, 2)Koncová funkcia |
1 | MsgBox GetAttributeSettings (22) |
Výsledok: „Adresár a skryté a systém“