Создание и открытие текстового файла из кода VBA Excel с помощью метода FileSystemObject.CreateTextFile. Синтаксис и параметры метода CreateTextFile.
CreateTextFile – это метод объекта FileSystemObject, который создает новый текстовый файл, открывает его и создает объект TextStream, обеспечивающий последовательный доступ к файлу для записи данных.
Синтаксис метода CreateTextFile
1 |
object.CreateTextFile (filename, [overwrite], [unicode]) |
object – экземпляр объекта FileSystemObject.
Параметры метода CreateTextFile
Параметр | Описание |
---|---|
filename | Имя создаваемого файла, включая путь к нему. Строковое выражение. Обязательный параметр. |
overwrite | Параметр, задающий, требуется ли перезаписывать существующий файл. Значение типа Boolean. True – файл можно перезаписать, False – нельзя. Необязательный параметр. По умолчанию – True. |
unicode | Параметр, задающий, будет ли файл создан в формате Юникод или ASCII. Значение типа Boolean. True – файл будет создан в формате Юникод, False – в формате ASCII. Необязательный параметр. По умолчанию – False. |
Пример создания текстового файла
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
Sub Primer() Dim fso, fl, ws 'Создаем новый экземпляр объекта FileSystemObject Set fso = CreateObject("Scripting.FileSystemObject") 'Присваиваем переменной fl новый объект TextStream, 'связанный с созданным и открытым для записи файлом Set fl = fso.CreateTextFile("C:\testfile.txt") 'Записываем текст в файл fl.Write ("Эта строка записана из кода VBA Excel.") 'Закрываем файл fl.Close 'Открываем файл для просмотра Set ws = CreateObject("WScript.Shell") ws.Run "C:\testfile.txt" End Sub |
Используемые переменные:
- fso – экземпляр объекта FileSystemObject;
- fl – экземпляр объекта TextStream, связанный с созданным и открытым для записи файлом;
- ws – экземпляр объекта WScript.Shell, предназначенный для запуска внешней программы, ассоциированной с расширением файла.
Содержание рубрики VBA Excel по тематическим разделам со ссылками на все статьи.
Выдает ошибку после примера:
"К сожалению, Exel не может одновременно открыть две книги с одинаковыми именами."
Подскажите, пожалуйста, в чем ошибка и как ее исправить можно?
Обсуждение закрыто.