Открытие или создание нового файла из кода VBA Excel для ввода и (или) вывода информации с помощью оператора Open. Синтаксис и параметры.
Определение оператора Open
Оператор Open не используется для открытия собственных файлов офисных приложений, например, документов Word, рабочих книг Excel или баз данных Microsoft Access. Так как это приводит к нарушению целостности и повреждению файлов.
Закрывается файл после окончания операций ввода и (или) вывода информации в коде VBA Excel с помощью оператора Close.
Синтаксис оператора Open
Краткая запись выражения с оператором Open:
1 |
Open pathname For mode As [#] filenumber |
Краткая запись не содержит необязательные параметры. Знак решетки [#] используется в случае, когда номер файла указывается в виде числа без использования функции FreeFile. Например: #1, #2, #150, #300.
С полной записью выражения с оператором Open вы можете ознакомиться на сайте разработчика. Мне не удалось заставить ее работать с необязательными параметрами в VBA Excel 2016.
Параметры оператора Open
Обязательные параметры:
Параметр | Описание |
---|---|
pathname | Строковое выражение, указывающее полный путь к открываемому файлу*. |
mode | Ключевое слово, задающее режим** открытого файла: Append – последовательный доступ, который позволяет записывать данные в конец файла с сохранением предыдущих строк; Input – последовательный доступ, который разрешает только чтение файла; Output – последовательный доступ, который позволяет записать новую информацию в файл с перезаписью (очисткой) предыдущих данных. |
filenumber | Числовое значение в диапазоне от 1 до 511 включительно, для получения которого следует использовать функцию FreeFile. |
* Если указанный файл не существует, он будет создан при открытии в любом режиме, кроме Input (только для чтения).
** На сайте разработчика вы можете узнать о существовании еще двух ключевых слов, задающих режим оператора Open: Binary и Random.
Продолжение темы об открытии файла для ввода и вывода информации с примерами кода опубликовано в статье: Операторы чтения и записи в файл.