Двоичный

Данные сохраняются в строчной форме, в любом заданном порядке

Binary

Не идите на поводу у номеров

Хотя в VBA рекомендуется обращаться к открытым файлам по номеру, запоминать то, с чем связаны какие-то числа, достаточно трудно и неудобно. Вместо номеров файлов можно использовать константы или переменные с понятным названием. Если наперед известен номер, который будет использоваться для отдельного файла, объявите для него константу. Данную константу затем можно использовать в операторе, воздействующем на файл. Вот пример:

Const PetsFile = 1, BdayFile = 2

Open "C:MiscDataPetsLog.txt" For Input As PetsFile

Open "C:MiscDataBirthdays.txt" For Random As BdayFile

Input #PetsFile, strPetlnfo ‘ чтение одного элемента из файла

Close PetsFile

Put BdayFile, 45, usrBDay ' запись одного элемента в файл

CloseBdayFile

Применяйте данный прием без опасения: вместо того чтобы собственноручно присваивать файлам номера, используйте функцию FreeFile, определяющую следующий доступный номер файла. Если значение, возвращаемое функцией, присвоить переменной, необходимость в запоминании номера просто отпадет. Вот пример применения данного приема: Dim DiaryFile As Integer DiaryFile = FreeFile () Open

"C:MySecretsDiary.txt" For Input As DiaryFile

Закрытие открытых файлов

Будьте аккуратными - после того как работа с файлами завершена, их следует закрыть.

Закрытие файла гарантирует, что все хранимые в памяти изменения действительно будут записаны на диск, а ресурсы, занимаемые файлами, освободятся и станут доступными для других приложений.

Для выполнения подобной задачи нужен, конечно же, оператор Close. Для закрытия определенного файла используется оператор вроде Close #2 (или Close PetsFile, как в предыдущем примере). Для закрытия всех открытых файлов оператор Close используется сам по себе.

Чтение и запись данных

Есть несколько VBA-команд для записи и извлечения данных из файла. В приведенной ниже таблице описана их работа.

Пример команды

Использование

Пояснение

Оператор Put

Предназначен для записи переменных в файл

Put #1, 1800, StrQuote (записывает переменную StrQuote в двоичный файл, начиная с позиции 1800);

Put #1, 15, usrCustomData (записывает переменную usr Cus t ornDa t a в файле с произвольным доступом в запись 15)

Оператор Get

Предназначен для чтения из файла переменной, сохраненной с помощью оператора Put

Get t #1, 1800, StrQuote (читает строку данных из двоичного файла с позиции 1800 в переменную Str Quot e); Get #1, 15, usrCustomDat a (читает определенные пользователем данные, хранимые в 15-й записи переменной usrCustomData)

Функция Input

Вы читаете VBA для чайников
Добавить отзыв
ВСЕ ОТЗЫВЫ О КНИГЕ В ИЗБРАННОЕ

0

Вы можете отметить интересные вам фрагменты текста, которые будут доступны по уникальной ссылке в адресной строке браузера.

Отметить Добавить цитату