Поделиться через


Оператор Input #

Читает данные из открытого последовательного файла и назначает эти данные переменным.

Синтаксис

Ввод#filenumber, varlist

Синтаксис оператора Input # состоит из таких частей:

Part Описание
filenumber Обязательно указывать. Любой допустимый номер файла.
varlist Обязательно. Список переменных с разделителями-запятыми, которым назначены значения, считываемые из файла. Не может быть массивом или объектной переменной. Но можно использовать переменные, описывающие элемент массива, или пользовательский тип.

Замечания

Данные, считанные с помощью Input # , обычно записываются в файл с помощью записи #. Используйте этот оператор только с файлами, открытыми в режиме Input или Binary. При прочтении стандартные строковые или числовые данные назначаются переменным без изменения.

В следующей таблице показано, как обрабатываются другие входные данные:

Data Значение, присваиваемое переменной
Запятая-разделитель или пустая строка Empty
#NULL# Null
#TRUE# или #FALSE# True или False
# гггг-мм-дд чч:мм:сс # Дата и/или время, представленные выражением
#ERROR errornumber # errornumber (переменная — это вариант, помеченный как ошибка)

Двойные кавычки () во входных данных игнорируются.

Примечание.

Не следует писать строки, содержащие внедренные кавычки (например, "1,2""X") для использования с оператором Input# ; Input # анализирует эту строку как две полные и отдельные строки.

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

Если при вводе элемента данных достигнут конец файла, ввод прерывается и возникает ошибка.

Примечание.

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

Пример

В этом примере оператор Input # используется для чтения данных из файла в две переменные. В этом примере предполагается, что TESTFILE это файл с несколькими строками данных, записанными в него с помощью инструкции Write # . То есть каждая строка содержит строку в кавычках и число, разделенное запятой, например "Hello", 234.

Dim MyString, MyNumber 
Open "TESTFILE" For Input As #1    ' Open file for input. 
Do While Not EOF(1)    ' Loop until end of file. 
    Input #1, MyString, MyNumber    ' Read data into two variables. 
    Debug.Print MyString, MyNumber    ' Print data to the Immediate window. 
Loop 
Close #1    ' Close file. 

См. также

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

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