GetAttr Описание
Возвращает целое число, представляющее атрибуты файла, папки или каталога.
Простые примеры GetAttr
12 | MsgBox GetAttr ("C: \")MsgBox GetAttr ("D: \ Test.txt") |
Это вернет некоторое целое число в соответствии с настройками файла / папки / диска.
Если имя пути не существует, возникнет ошибка времени выполнения "53": файл не найден.
GetAttr Синтаксис
В редакторе VBA вы можете ввести «GetAttr (», чтобы увидеть синтаксис функции GetAttr:
Функция GetAttr содержит аргумент:
Имя пути: Строковое выражение, представляющее файл / папку / диск.
Возвращаемые значения
Значение, возвращаемоеGetAttr представляет собой сумму следующих значений атрибутов:
Постоянный | Ценить | Описание |
---|---|---|
vbNormal | 0 | Обычный. |
vbReadOnly | 1 | Только для чтения. |
vbHidden | 2 | Скрытый. |
vbSystem | 4 | Системный файл. Недоступно на Macintosh. |
vbDirectory | 16 | Каталог или папка. |
vbArchive | 32 | Файл был изменен с момента последнего резервного копирования. Недоступно на Macintosh. |
vbAlias | 64 | Указанное имя файла является псевдонимом. Доступно только на Macintosh. |
Примеры функции Excel VBA GetAttr
1 | MsgBox GetAttr ("C: \ Program Files (x86)") |
1 | MsgBox GetAttr ("C: \") |
Во время тестирования с различными папками / файлами / дисками он будет возвращать различные числа, такие как 1, 2, 5, 22 и так далее.
Например, в случае 22 это означает vbDirectory (16) + vbSystem (4) + vbHidden (2).
Чтобы получить настройки атрибутов, соответствующие каждому номеру, вы можете использовать следующую функцию.
12345678910111213 | Функция GetAttributeSettings (attr As VbFileAttribute) As StringDim strSettings как строкаstrSettings = ""Если (attr и vbDirectory) = vbDirectory, то strSettings = strSettings & "& Directory"Если (attr и vbVolume) = vbVolume, то strSettings = strSettings & "& Volumn"Если (attr и vbAlias) = vbAlias, то strSettings = strSettings & "& Псевдоним"Если (attr и vbArchive) = vbArchive, то strSettings = strSettings & "& Архив"Если (attr и vbHidden) = vbHidden, то strSettings = strSettings & "& Hidden"Если (attr и vbReadOnly) = vbReadOnly, то strSettings = strSettings & "& ReadOnly"Если (attr и vbSystem) = vbSystem, то strSettings = strSettings & "& System"GetAttributeSettings = Mid (strSettings, 2)Конечная функция |
1 | MsgBox GetAttributeSettings (22) |
Результат: «Каталог и скрытые и системные»