Input # statement
Reads data from an open sequential file and assigns the data to variables.
Syntax
Input #filenumber, varlist
The Input # statement syntax has these parts:
Part | Description |
---|---|
filenumber | Required. Any valid file number. |
varlist | Required. Comma-delimited list of variables that are assigned values read from the file—can't be an array or object variable. However, variables that describe an element of an array or user-defined type may be used. |
Remarks
Data read with Input # is usually written to a file with Write #. Use this statement only with files opened in Input or Binary mode. When read, standard string or numeric data is assigned to variables without modification.
The following table illustrates how other input data is treated:
Data | Value assigned to variable |
---|---|
Delimiting comma or blank line | Empty |
#NULL# | Null |
#TRUE# or #FALSE# | True or False |
# yyyy-mm-dd hh:mm:ss # | The date and/or time represented by the expression |
#ERROR errornumber # | errornumber (variable is a Variant tagged as an error) |
Double quotation marks () within input data are ignored.
Note
You should not write strings that contain embedded quotation marks (for example, "1,2""X"
) for use with the Input # statement; Input # parses this string as two complete and separate strings.
Data items in a file must appear in the same order as the variables in varlist and match variables of the same data type. If a variable is numeric and the data is not numeric, a value of zero is assigned to the variable.
If you reach the end of the file while you are inputting a data item, the input is terminated and an error occurs.
Note
To be able to correctly read data from a file into variables by using Input #, use the Write # statement instead of the Print # statement to write the data to the files. Using Write # ensures that each separate data field is properly delimited.
Example
This example uses the Input # statement to read data from a file into two variables. This example assumes that TESTFILE
is a file with a few lines of data written to it by using the Write # statement; that is, each line contains a string in quotations and a number separated by a comma, for example, "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.
See also
Support and feedback
Have questions or feedback about Office VBA or this documentation? Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기