Відкриття та закриття файлу
Обговоримо інструкції, пов'язані з відкриттям файлу для операцій введення / виводу, а також із закриттям файлу по завершенню роботи з ним.
Open - дозволяє виконання операцій введення / виводу при роботі з файлом. синтаксис:
Open Шлях For Режим [Access Доступ] [Блокування] _
As [#] НомерФайла [Lеп = Довжина]
Шлях - рядковий вираз, що вказує ім'я файлу
Режим - встановлює режим роботи з файлом. Можна вибрати зі значень Append, Binary, Input, Output або Random.
Доступ - встановлює операції, дозволені з відкритим файлом. Можна вибрати зі значень Read, write або Read Write /
Блокування - встановлює операції, дозволені з відкритим файлом іншим процесам. Допустимі значення:
Shared, Lock Read, Lock Write і Lock Read Write.
НомерФайла - допустимий номер файлу. Число в інтервалі від 1 до 255. Зверніть увагу на те, що параметру НомерФайла передує символ #. Значення НомерФайла не можна змінювати, поки файл відкритий. Але при наступному відкритті файлу НомерФайла може бути іншим числом.
Довжина - число, менше або рівне 32 767 (байт). Для файлів, відкритих в режимі Random, це значення є довжиною записи. Для файлів з послідовним доступом це її параметром є число буферизованих символів.
Close. Про інструкцію open важливо також знати, що під час її роботи VBA також резервує файловий буфер в пам'яті комп'ютера для прискорення процесу запису і зчитування (пряме записування інформації на диск може істотно уповільнити виконання програми, що особливо помітно при роботі з великими файлами). Максимальне число файлових буферів встановлюється в системному файлі Config.sys.
Завершує операції введення / виводу з файлом, відкритим за допомогою інструкції open. Ця інструкція очищає буфер і вказує операційній системі оновити FAT (таблицю розміщення файлів). Важливо, щоб кожен файл по завершенні роботи з ним був закритий, інакше це може привести до часткової втрати інформації. синтаксис:
Аргумент СпісокНомеровФайлов може представляти один або кілька номерів файлів. При цьому використовується наступний синтаксис, де НомерФайла представляє будь-якої допустимий номер файлу:
FreeFile - функція повертає доступний номер, який може використовуватися в інструкції Open.
Наведемо приклад інструкції, що відкриває для запису бінарний файл перший з робочою папки, і потім інструкції, що закриває цей бінарний файл.
Open "Перший" For Binary Access Write As # 1