Оператор 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 и обратная связь.