Оператор Print #

Записывает отформатированные данные в последовательный файл.

Синтаксис

Печати#filenumber, [ outputlist ]

Синтаксис оператора Print # включает следующие части:

Часть Описание
filenumber Обязательно указывать. Любой допустимый номер файла.
outputlist Необязательно указывать. Выражение или список выражений, которые необходимо напечатать.

Settings

Параметры аргументаoutputlist:

[{ Spc(n) | Tab [ (n) ]}] [ expression ] [ charpos ]

Параметр Описание
Spc(n) Используется для вставки пробелов в выходные данные. В этом случае n — количество пробелов, которые необходимо вставить.
Tab(n) Используется для добавления точки вставки в столбец с абсолютным номером. В этом случае n — номер столбца. Используйте Tab без аргумента, чтобы добавить точку вставки в начало следующей зоны печати.
expression Числовые выражения или строковые выражения, которые необходимо напечатать.
charpos Указывает точку вставки следующего символа. Для добавления точки вставки сразу после последнего отображенного символа используйте точку с запятой. Для добавления точки вставки в столбец с абсолютным номером используйте Tab(n). Используйте Tab без аргумента, чтобы добавить точку вставки в начало следующей зоны печати. Если аргумент charpos не указан, следующий символ печатается на следующей строке.

Примечания

Записанные с помощью оператора Print # данные обычно считываются из файла с помощью оператора Line Input # или Input #.

Если вы опустите аргумент outputlist, а после filenumber добавите только разделитель элементов списка, в файле будет напечатана пустая строка.

Несколько выражений разделяются или пробелом, или точкой с запятой (они в данном случае эквивалентны).

Для данных типа Boolean печатается True или False. Ключевые слова True и False не переводятся, какой бы языковый стандарт ни был указан.

Данные типа Date записываются в файл с помощью стандартного краткого формата даты, распознаваемого системой. Когда компонент даты или времени отсутствует или равен нулю, в файл записывается только предоставленная часть.

В файл ничего не записывается, если для данных outputlist задано значение Empty. Но если для данных outputlist установлено значение Null, в файл записывается Null.

Для данных об ошибках выходные данные отображаются в виде Errorкода ошибки. Ключевое слово Error не переводится независимо от языкового стандарта.

Все данные, записанные в файл с помощью оператора Print #, понятны на международном уровне, то есть эти данные отформатированы надлежащим образом с помощью соответствующего десятичного разделителя.

Так как оператор Print # записывает изображение данных в файл, для правильной печати необходимо разделять данные. Если вы используете Tab без аргументов для перемещения позиции печати в следующую зону печати, оператор Print # также записывает в файл пробелы между полями печати.

Примечание.

Если в будущем вы захотите считать данные из файла с помощью оператора Input #, для записи этих данных в файл используйте оператор Write # вместо Print #. Использование оператора Write # обеспечивает целостность каждого отдельного поля данных благодаря их правильному разделению, что позволяет считывать данные с помощью оператора Input #. Использование Write # также гарантирует правильное считывание данных при любом языковом стандарте.

Пример

В данном примере оператор Print # используется для записи данных в файл.

Open "TESTFILE" For Output As #1 ' Open file for output. 
Print #1, "This is a test" ' Print text to file. 
Print #1, ' Print blank line to file. 
Print #1, "Zone 1"; Tab ; "Zone 2" ' Print in two print zones. 
Print #1, "Hello" ; " " ; "World" ' Separate strings with space. 
Print #1, Spc(5) ; "5 leading spaces " ' Print five leading spaces. 
Print #1, Tab(10) ; "Hello" ' Print word at column 10. 
 
' Assign Boolean, Date, Null and Error values. 
Dim MyBool, MyDate, MyNull, MyError 
MyBool = False : MyDate = #February 12, 1969# : MyNull = Null 
MyError = CVErr(32767) 
' True, False, Null, and Error are translated using locale settings of 
' your system. Date literals are written using standard short date 
' format. 
Print #1, MyBool ; " is a Boolean value" 
Print #1, MyDate ; " is a date" 
Print #1, MyNull ; " is a null value" 
Print #1, MyError ; " is an error value" 
Close #1 ' Close file. 

См. также

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.