VB6・VBA関数メモ:Line Input #ステートメント

Line Input #ステートメントについてメモしておきます。

このステートメントはファイルからデータの読み込みの際に使用します。

同じファイル読み込みのステートメントにInput#ステートメントがありますが、
こちらは1行全てのデータを取得します。

カンマ(,)区切りのデータや文字列のダブルクォーテーション(")等もそのまま読み込むため、
Write #ステートメントで書き込んだデータの場合は、Input#ステートメントを使った方が良いかと思います。


概要

Line Input #FileNmber, VarList
機能 ファイルから1行ずつデータを読み込み、変数にデータを取得する。
引数 FileNmber Openステートメントで指定したファイル番号
VarName データを格納する変数


使用例

説明 記述例 出力
ファイルからデータを読み込み
(Sumple.txt)
123
abc
あいう
Dim str As String
Dim n   As Integer

n = FreeFile
Open "Sumple.txt" For Input As #n

Do Until EOF(n)
    Line Input #n, str
    Debug.Print str
Loop

Close #n
123
abc
あいう


動作検証

説明 記述例 出力
カンマやダブルクォーテーションを
含むデータもそのまま取得
(Sumple.txt)
"123","abc","あいう"
"234","bcd","アイウ"
"345","cde","アイウ"
Dim str As String
Dim n   As Integer

n = FreeFile
Open "Sumple.txt" For Input As #n

Do Until EOF(n)
    Line Input #n, str
    Debug.Print str
Loop

Close #n
"123","abc","あいう"
"234","bcd","アイウ"
"345","cde","アイウ"
Input/Binaryモードで開いた
ファイルのみ使用可能
Dim n   As Integer
n = FreeFile
Open "Sumple.txt" For Input As #n
Line Input #n, str
Close #n
Dim n   As Integer
n = FreeFile
Open "Sumple.txt" For Binary As #n
Line Input #n, str
Close #n
Dim n   As Integer
n = FreeFile
Open "Sumple.txt" For Output As #n
Line Input #n, str
Close #n
エラー
Dim n   As Integer
n = FreeFile
Open "Sumple.txt" For Append As #n
Line Input #n, str
Close #n
エラー
Dim n   As Integer
n = FreeFile
Open "Sumple.txt" For Random As #n
Line Input #n, str
Close #n
エラー


コメント
コメントする








    
この記事のトラックバックURL
トラックバック