ExcelでCSVファイルを読み込む際、ファイルを開いてコピー&ペーストするだけではなく、VBAのQueryTable機能を使うことで、自動化や柔軟な読み込み制御が可能になります。
本記事では、Excel VBAを使って、UTF-8形式のCSVファイルを指定したセル位置に読み込み、列ごとのデータ型も細かく制御する方法をご紹介いたします。
処理の概要
- 対象CSVファイル:
import_data.csv(UTF-8エンコード) - 読み込み位置:シート上の任意セル(ここでは
D3セルを指定) - 区切り文字:カンマ
- 列の書式指定:文字列、日付、数値などを列ごとに定義
- 読み込み後にQueryTableを削除し、見た目をシンプルに保持
VBAコード:QueryTableを用いたCSVの読み込み処理
Sub ImportCSVWithQueryTable()
With ActiveSheet.QueryTables.Add( _
Connection:="TEXT;" & ThisWorkbook.Path & "\import_data.csv", _
Destination:=Range("D3") _
)
.AdjustColumnWidth = True
.TextFilePlatform = 65001 ' UTF-8
.TextFileParseType = xlDelimited
.TextFileCommaDelimiter = True
.TextFileColumnDataTypes = Array(1, 5, 2, 1, 2) ' 各列の書式設定
.Refresh BackgroundQuery:=False
.Delete ' クエリの痕跡を残さない
End With
End Sub
各パラメータの詳細
| パラメータ名 | 内容・役割 |
|---|---|
Connection | 読み込み対象のCSVファイルのパス |
Destination | データの書き込み開始セル(例:Range("D3")) |
TextFilePlatform:=65001 | UTF-8文字コードを指定(文字化け防止) |
TextFileCommaDelimiter | カンマ区切りで読み込み |
TextFileColumnDataTypes | 各列の書式を定義(下表参照) |
Refresh | データの読み込み実行 |
Delete | 読み込み後にQueryTable自体を削除(見た目を維持) |
TextFileColumnDataTypes の書式指定コード
| 数値 | 書式の種類 |
|---|---|
| 1 | 一般(自動判定) |
| 2 | テキスト形式 |
| 5 | 日付(YMD) |
| 9 | 読み飛ばし |
実行結果のイメージ
| D列 | E列(YMD) | F列(テキスト) | G列 | H列 |
|---|---|---|---|---|
| 田中 | 2025/07/30 | TOKYO | 1234 | 備考 |
応用ポイント
- 区切り文字をタブにしたい場合は
.TextFileTabDelimiter = Trueに変更可能です。 - 読み込み先を
Range("A1")にすれば、既存シートの表形式に合わせた配置が可能です。 - QueryTableを削除しない設定にすれば、再読み込みボタンによる更新にも対応できます。
注意点
- 読み込み先の範囲に既存のデータがある場合は上書きされるため、十分に注意してください。
TextFileColumnDataTypesの配列数が列数より少ない場合、余分な列は自動判定になります。.Deleteを省略すると、読み込み後もクエリの接続情報が残り、更新可能な状態になります。
まとめ
Excel VBAの QueryTables を使えば、CSVファイルの読み込みを自在に制御し、手間のかかる整形作業を自動化できます。
列の形式や文字コード、配置場所まで細かく設定できるため、定型データの読み込みに最適です。
毎回同じCSVファイルを開いて処理している方は、この方法を導入することで作業効率が大きく向上することでしょう。
副業から独立まで「稼げる」Webスキルを習得する(PR)
ここまで読んでいただきありがとうございます。 最後に宣伝をさせてください。
「副業を始めたいが、何から手をつければいいかわからない」「独学でスキルはついたが、収益化できていない」という悩みを持つ方には、マンツーマン指導のWebスクール**「メイカラ」**が適しています。
このスクールは、単に技術を教えるだけでなく、**「副業として具体的にどう稼ぐか」**という実務直結のノウハウ提供に特化している点が特徴です。
講師陣は、実際に「副業Webライターから1年で独立して月収100万円」を達成したプロや、現役で利益を出し続けているブロガーなど、確かな実績を持つプレイヤーのみで構成されています。そのため、机上の空論ではない、現場で通用する戦術を学ぶことができます。
副業に特化した強み
- 最短ルートの提示: 未経験からでも実績を出せるよう、マンツーマンで指導。
- AI活用の習得: 副業の時間対効果を最大化するための、正しいAI活用スキルも網羅。
- 案件獲得のチャンス: 運営がWebマーケティング会社であるため、実力次第で社内案件の紹介など、仕事に直結する可能性があります。
受講者の多くは、「在宅でできる仕事を探している」「副業を頑張りたい」という20代・30代・40代が中心です。
受講前には、講師による無料説明が行われます。無理な勧誘はなく、自分に合った副業スタイルやプランを相談できるため、まずは話を聞いてみることから始めてみてはいかがでしょうか。
