Самоучитель VBA

       

Открытие и закрытие файла



Обсудим инструкции, связанные с открытием файла для операций ввода/вывода, а также с закрытием файла по завершению работы с ним.

Open



Разрешает выполнение операций ввода/вывода при работе с файлом.

Синтаксис:

Open Путь For Режим [Access Доступ] [Блокировка] As [ # ] НомерФайла [Lеn=Длина]

  • Путь — строковое выражение, указывающее имя файла

  • Режим — устанавливает режим работы с файлом. Допустимые Значения: Append, Binary, Input, Output или Random

  • Доступ — устанавливает операции, разрешенные с открытым файлом. Допустимые значения: Read, Write или Read Write

  • Блокировка — устанавливает операции, разрешенные с открытым файлом другим процессам. Допустимые значения:

  • Shared, Lock Read, Lock Write и Lock Read Write и номерФайла — допустимый номер файла. Число в интервале от 1 до 255. Обратите внимание на то, что параметру Номер-Файла предшествует символ #. Значение номерФайла нельзя изменять, пока файл открыт. Но при следующем открытии файла номерФайла может быть другим числом

    длина — число, меньшее либо равное 32 767 (байт). Для файлов, открытых в режиме Random, это значение является длиной записи. Для файлов с последовательным доступом это значение является числом буферизуемых символов Про инструкцию open важно также знать, что во время ее работы VBA также резервирует файловый буфер в памяти компьютера для ускорения процесса записи и считывания (прямое записывание информации на диск может существенно замедлить выполнение программы, что особенно заметно при работе с большими файлами). Максимальное число файловых буферов устанавливается в системном файле Config.sys

  • Close

    Завершает операции ввода/вывода с файлом, открытым с помощью инструкции open. Эта инструкция 'очищает буфер и указывает операционной системе обновить FAT (таблицу размещения файлов). Важно, чтобы каждый файл по завершении работы с ним был закрыт, иначе это может привести к частичной потере информации.

    Синтаксис:

    Close [СписокНомеровФайлов] Аргумент СписокНомеровФайлов может представлять один или несколько номеров файлов. При этом используется следующий синтаксис, где номерФайла представляет любой допустимый номер файла: [[#] номерФайла] [, [#] номерФайла] ...

    Reset

    Закрывает все активные файлы, открытые с помощью инструкции open, и записывает содержимое всех буферов файлов

    На диск, открытых с помощью инструкции Open

    FreeFile

    Функция возвращает доступный номер, который может использоваться в инструкции Open

    Приведем пример инструкции, открывающей для записи бинарный файл первый из рабочей папки, и затем инструкции, закрывающей этот бинарный файл.

    Open "Первый" For Binary Access Write As #1 Close #1



    Содержание раздела