Excelへテキストファイルを読み込む
Sub テキストファイルを読み込む()
Dim myCon As New ADODB.Connection, myRS As New ADODB.Recordset
Dim myFolder As String, myTxt As String
'テキストファイルの格納されている接続先のフォルダ
myFolder = ThisWorkbook.Path & "\txt"
'読み込みたいテキストファイル
myTxt = "data.csv"
'接続
With myCon
.Provider = "Microsoft.Jet.OLEDB.4.0"
.Properties("Extended Properties") = "TEXT"
.Open myFolder
End With
'Recordsetオブジェクトにテキストファイルの内容を格納
'引数「Options」に「adCmdTableDirect」をしていする
'これを指定しないと、なぜかうまく動作しない場合が多い
myRS.Open myTxt, myCon, Options:=adCmdTableDirect
'セルに転記
Range("A1").CopyFromRecordset myRS
myRS.Close: Set myRS = Nothing
myCon.Close: Set myCon = Nothing
End Sub
Recordsetオブジェクトでテキストファイルを読み込む
Recordsetオブジェクト.Open テキストファイル名, Connectionオブジェクト
| Access | Excel | テキストファイル | |
|---|---|---|---|
| Connectionオブジェクトのデータソース | mdbファイル | xlsファイル | ファイルの存在するフォルダ |
| Recordsetオブジェクト.Open ○○○ | テーブル クエリ |
シート名 名前付き範囲 |
テキストファイル |
元になるCSVファイル
実行結果

