【Excel VBA】テキストファイルを読み込む方法

ExcelVBA

なんで わざわざVBAで テキストファイルを読み込む必要があるの?

自動化したいからだよ。毎回毎回ファイルを選択するの めんどくさくない?

どんだけ めんどくさがり なんだよ…。

この記事では以下の方法を知ることができます。

この記事で学べること

VBAを使用してテキストファイルをExcelに取り込む方法

テキストファイルを取り込むプログラム

以下はテキストファイルを読み込むコードです。

プログラム解説

ファイルを読み込む

ファイルを読み込むには Openステートメント を使用します。

Openステートメント

Open 読み込むファイルのパス For Input As #1

  ‘ ここに処理を記述

Close #1

#1 の部分にデータが読み込まれます。そのため、最後に #1 を閉じます。また、次に説明していますが、テキストファイルを読み込む時に、この #1 を指定します。

1行分読み取む

Openステートメントで読み込んだデータを、1行分読み込むためには Line Input # ステートメント を使用します。

Line Input # ステートメント

Line Input #1, buf

#1 に読み込んだテキストファイルを1行取り出して、buf という変数に格納しています。つまり buf の部分は自由な変数名にすることができます。

最終行を読み取る

最終行を検知するためには EOF関数 を使用します。

EOF関数

EOF(1)

()の中の数字はOpenステートメントで指定した #1 の数字 を指定する必要があります。

実行結果

ではこのプログラムを実行してみましょう。

1行ずつ読み込みができました。

おわりに

今回の記事では以下のことを知ることができました。

この記事で分かったこと

・ Open でファイルを読み込む方法

・ Line Input # で1行ずつ読み込む方法

・EOF で最終行まで読み込む方法

この方法を使用して、データを1行ずつ変換しながらExcelに取り込むことができます。

よく使用する技術ですのでご紹介しました。

ではまた。

・以下の記事を参考にさせて頂きました。

VBAでテキストファイルを読み込む方法|CSVや固定長文字列の取得方法も解説
VBAでテキストファイルを読み込んでデータを取得したいときがあります。 そこで本記事ではテキストファイルを読み込む方法をご紹介します。 また、経験上、テキストファイルを読み込むときは、CSVファイルや固定長文字列で記述されたデータを扱うこと

コメント

タイトルとURLをコピーしました