Этот сайт использует cookies. Продолжение работы с сайтом означает, что Вы согласны!
Функции и процедуры для манипулирования файлами
Для манипулирования файлами предназначены следующие функции и процедуры:
FreeFile()
— возвращает свободный дескриптор, который можно использовать при открытии файла;FileAttr(<Дескриптор>)
— позволяет определить в каком режиме был открыт файл с указанным дескриптором. Возвращает следующие значения:
1
— режимInput
;2
— режимOutput
;4
— режимRandom
;8
— режимAppend
;32
— режимBinary
;
FileLen(<Путь к файлу>)
— возвращает размер файла в байтах:
Debug.Print FileLen(ThisWorkbook.Path & "\test.txt")
Если файл открыт, то можно воспользовать функцией LOF(<Дескриптор>)
;
LOF(<Дескриптор>)
— возвращает длину файла в байтах.FileDateTime(<Путь к файлу>)
— возвращает дату и время создания или последнего изменения файла:
Debug.Print FileDateTime(ThisWorkbook.Path & "\test.txt")
' 06.10.2012 20:05:23
GetAttr(<Путь>)
— позволяет определить какие атрибуты установлены для файла или каталога. Возвращает сумму следующих значений:
0
—vbNormal
— обычный файл;1
—vbReadOnly
— файл доступен только для чтения;2
—vbHidden
— скрытый файл;4
—vbSystem
— системный файл;16
—vbDirectory
— путь указывает на каталог;32
—vbArchive
— архивный файл;64
—vbAlias
— имя файла является псевдонимом (используется только в Macintosh).
Проверить, установлен атрибут или нет, позволяет оператор And
. Если атрибут установлен, то результатом операции будет ненулевое значение:
Dim attr
attr = GetAttr(ThisWorkbook.Path & "\test.txt")
If (attr And vbReadOnly) <> 0 Then
Debug.Print "Файл доступен только для чтения"
End If
SetAttr <Путь>, <Атрибуты>
— позволяет установить значения атрибутов. В параметре<Атрибуты>
указывается сумма значений константvbNormal
,vbReadOnly
,vbHidden
,vbSystem
,vbArchive
иvbAlias
. Пример:
SetAttr ThisWorkbook.Path & "\test.txt", vbReadOnly + vbHidden
Name <Старый путь> As <Новый путь>
— позволяет переименовать или переместить файл или каталог. Если исходный файл отсутствует или новое имя файла уже существует, то генерируется ошибка. Пример переименования файла:
Name ThisWorkbook.Path & "\test.txt" As _
ThisWorkbook.Path & "\tests.txt"
Пример перемещения файла в другой каталог:
Name ThisWorkbook.Path & "\tests.txt" As _
ThisWorkbook.Path & "\folder1\tests.txt"
FileCopy <Копируемый файл>, <Куда копируем>
— позволяет скопировать содержимое файла в другой файл. Пример:
FileCopy ThisWorkbook.Path & "\test2.txt", _
ThisWorkbook.Path & "\folder1\test2.txt"
Kill <Путь к файлу>
— позволяет удалить файл. Путь может содержать спецсимволы ? (любой один символ) и * (любое количество любых символов). Пример удаления одного файла:
Kill ThisWorkbook.Path & "\test2.txt"
Пример удаления всех текстовых файлов в указанном каталоге:
Kill ThisWorkbook.Path & "\folder1\*.txt"
Помощь сайту
Yandex-деньги: 410011140483022
ПАО Сбербанк:
Счет: 40817810855006152256
Реквизиты банка:
Наименование: СЕВЕРО-ЗАПАДНЫЙ БАНК ПАО СБЕРБАНК
Корреспондентский счет: 30101810500000000653
БИК: 044030653
КПП: 784243001
ОКПО: 09171401
ОКОНХ: 96130
Скриншот реквизитов