Excel VBAのLine Input、ファイルから1行ずつテキストを読み込むために使用します。テキストファイルの内容をプログラムに読み込む際に使います。具体的な使い方や、注意点やサンプルコードを紹介します。
基本的な文法やVBAの実践的な応用までを網羅的に学習できる方法は、ExcelVBAエキスパート資格の取得を目指すこと。学習を通して、より効率的に、着実に基礎を身につけることが可能です。資格取得すれば、スキルの証明にもなり、職場での評価アップにも繋がるため、勉強を進めるモチベーションにもなります。
本サイト参考:マクロ知識がないから「何から学べば良いのかわからない」という人におすすめの記事
以下のようなシーンで利用されます。
・テキストファイルからデータを読み込んで処理する場合に使用します。また、CSVファイルなどの形式のデータを読み込む際によく利用します。
・ファイル番号を使用してファイルを開きます。
・ファイルから1行ずつテキストを読み込みます。
・ファイルの終端に達すると、End Of File (EOF) マークが設定
・ファイルの各行は、ファイルの改行文字(通常は vbCrLf)で区切られている。
・テキストファイルが大きい場合やフォーマットが複雑な場合は、他の方法を検討する。
・ファイルが存在しない場合やアクセスできない場合、実行時エラーが発生します。
Option Explicit
Sub ReadTextFile()
Dim fileNum As Integer
Dim textLine As String
' ファイルを開く
fileNum = FreeFile
Open "C:\Users\User\Desktop\DataCsv\テキスト.txt" For Input As fileNum
' ファイルから1行ずつ読み込む
Do Until EOF(fileNum)
Line Input #fileNum, textLine
Debug.Print textLine ' 1行ずつデバッグウィンドウに出力
Loop
' ファイルを閉じる
Close fileNum
End Sub
サンプルコードは、"C:\Users\User\Desktop\DataCsv\テキスト.txt" というファイルから1行ずつテキストを読み込み、デバッグウィンドウに出力します。
Excel VBAで自動化するコードのベースを習得したい方におすすめ!
VBAエキスパート資格は、日常業務でExcelを多用し、手動作業を減らしたいと考えている方には価値あるものです。
ExcelVBAエキスパートベーシック
仕事の効率をあげるためにExcelVBAを利用する人が対象の問題集です。
ExcelVBAエキスパートスタンダード
ExcelVBAの開発を仕事にする人が対象の問題集です。
Excel VBA エキスパート資格について知りたい方は、下記「Excel VBAスキルアップを目指すなら知っておきたいVBAエキスパート」をご確認ください。