エクセルVBAを使ってテキストファイルからデータを読み込み
以下は、私たちは、テキストファイルからデータを読み込むエクセルVBAでプログラムを見ていきます。このファイルには、私たちがExcelにインポートするいくつかの地理的座標が含まれています。
状況:
1.まず、テキストファイルをダウンロードして、「C:\テスト\」に追加
ワークシート上のコマンドボタンを配置し、次のコード行を追加します。
2.私たちは、4つの変数を宣言します。 String型、String型、String型、Integer型のposLatのテキスト行のテキストののmyFile、およびInteger型のposLong。
Dim myFile As String, text As String, textline As String, posLat As Integer, posLong As Integer
3.私たちは、完全なパスとファイル名を変数のmyFileを初期化する必要があります。
myFile = "C:\test\geographical-coordinates.txt"
または標準の[開く]ダイアログボックスを表示し、(実際にファイルを開かずに)ファイルを選択するために、ApplicationオブジェクトのGetOpenFileNameのメソッドを使用します。
myFile = Application.GetOpenFilename()
注:我々は、入力としてエクセルVBAに何も与えないカッコ手段との間の空白部分。 Visual BasicエディターでGetOpenFileNameの上にカーソルを置き、引数のヘルプはF1をクリックします。
4.次のコード行を追加します。
Open myFile For Input As #1
注意:このステートメントは、ファイルを読み取ることができます。私たちは、コードの残りの部分の間に第1位としてファイルを参照することができます。
次のコード行を追加します。5.:
Do Until EOF(1) Line Input #1, textline text = text & textline Loop
注:ファイル(EOF)が終了するまで、のExcel VBAファイルから単一の行を読み取り、テキスト行に割り当てます。我々は、すべての単一の行(参加)CONCATENATEに&演算子を使用して、変数テキストに保存します。
6.閉じるファイル。
Close #1
7.次に、我々は、可変テキストで緯度と経度の単語の位置を検索します。私たちは、InStr関数を使用します。
posLat = InStr(text, "latitude") posLong = InStr(text, "longitude")
8.私たちは、変数のテキストから座標を抽出し、セルA1とセルA2に座標を書き込むためにこれらの位置およびMid関数を使用します。
Range("A1").Value = Mid(text, posLat + 10, 5) Range("A2").Value = Mid(text, posLong + 11, 5)
9.テストプログラム。
結果: