Оператор Print #
Записывает отформатированные данные в последовательный файл.
Синтаксис
Печатать#filenumber, [ outputlist ]
Синтаксис оператора Print # включает следующие части:
Часть | Описание |
---|---|
filenumber | Обязательно указывать. Любой допустимый номер файла. |
outputlist | Необязательно указывать. Выражение или список выражений, которые необходимо напечатать. |
Параметры
Параметры аргумента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 и обратная связь.