CSVデータ操作 Excel一覧 Excel操作 データファイル操作

【Excel】CSVファイルをExcelデータに一括で変換する方法|手間を大幅削減できる便利なテクニック

日々の業務で複数のCSVファイルを扱っていると、「これをいちいち開いてExcel形式に保存し直すのは面倒だ」と感じたことはありませんか?
CSVファイルは手軽なデータ交換形式ですが、レイアウト調整やデータ加工をしたい場合には、Excel形式(.xlsx)に変換してから作業する方が圧倒的に効率的です。

本記事では、複数のCSVファイルを一括でExcelファイルに変換する方法について、初心者向けの手順から、業務効率を劇的に向上させる自動化テクニックまで詳しく解説します。繰り返し作業に悩んでいる方は、ぜひ参考にしてください。

そもそもCSVファイルとは?なぜExcel形式に変換する必要があるのか

CSV(Comma Separated Values)ファイルは、カンマ区切りのテキストデータ形式です。Excelでも開くことはできますが、CSVファイルには次のような制約があります。

  • 書式(色、罫線など)が保存できない

  • 数式やグラフを保持できない

  • ファイルを開くたびにデータ型が自動認識され、先頭ゼロの消失や日付誤変換が起こる

これらの問題を避けるために、CSVファイルをExcel形式(.xlsx)に変換して保存し直すことで、

  • 書式設定ができる

  • 数式を使った計算が可能

  • データ型を固定できる

など、より安定したデータ管理が可能になります。

【Excel】外部データの取り込みを自動化する方法

CSVファイルをExcelに一括変換する主な方法

複数CSVファイルをまとめてExcel形式に変換する方法には、大きく3つのアプローチがあります。

  1. 手作業で開いて「名前を付けて保存」

  2. Power Queryを使って取り込み後に保存

  3. VBAマクロを使って完全自動化

ここでは、特に実務で使いやすいPower QueryとVBAの方法を詳しく紹介します。

Power Queryで複数CSVをまとめて取り込んで変換

Excelの「Power Query」機能を使えば、フォルダ内の複数CSVファイルを一括で取り込むことが可能です。

手順

  1. Excelを開く

  2. データ」タブ → 「データの取得」→「フォルダから」を選択

  3. 対象のCSVファイルが格納されているフォルダを指定

  4. ファイル一覧が表示されたら、「データの変換」をクリック

  5. クエリエディタが開くので、「コンテンツ」列の「バイナリ」リンクをクリックして中身を展開

  6. 必要に応じて列削除、フィルタリング、並べ替えなどの整形処理を行う

  7. 閉じて読み込む」でデータをExcelに取り込む

取り込んだ後は、通常のExcelファイルとして保存すればOKです。

メリット・デメリット

 

メリットデメリット
作業の手間が大幅に減るPower Queryの基本操作を覚える必要あり
データ加工・整形も同時にできる元ファイルごとの個別保存はできない
更新もワンクリックでできる大量ファイルだと処理に時間がかかることも

VBAマクロでCSVを一括でExcelに変換&保存

個別のCSVファイルを、それぞれ別々のExcelファイル(.xlsx)に変換・保存したい場合は、VBAを使うのが最適です。

【Excel】CSVファイルを開かずにExcelデータに変換する方法|作業効率アップと文字化け防止のコツも解説

一括変換するVBAコード例

Sub CSV一括Excel変換()

Dim csvFolder As String
Dim csvFile As String
Dim wb As Workbook
Dim newFilePath As String

' CSVファイルが格納されているフォルダを指定
csvFolder = Application.GetOpenFilename("CSVファイル (*.csv), *.csv", , "CSVファイルを1つ選択してフォルダを指定してください")

If csvFolder = "False" Then Exit Sub

csvFolder = Left(csvFolder, InStrRev(csvFolder, "\"))
csvFile = Dir(csvFolder & "*.csv")

Application.ScreenUpdating = False

Do While csvFile <> ""

Set wb = Workbooks.Open(csvFolder & csvFile)

newFilePath = csvFolder & Replace(csvFile, ".csv", ".xlsx")
wb.SaveAs Filename:=newFilePath, FileFormat:=xlOpenXMLWorkbook
wb.Close SaveChanges:=False

csvFile = Dir

Loop

Application.ScreenUpdating = True

MsgBox "変換完了しました!", vbInformation

End Sub

このマクロの特徴

  • 指定フォルダ内のすべてのCSVファイルを対象に

  • 自動でExcelブック形式(.xlsx)に変換

  • 1ファイルずつ保存して閉じる

  • 作業完了後にポップアップで通知

ポイント
対象フォルダに不要なファイルがあるとエラーになる可能性があるため、あらかじめフォルダ整理しておくのがおすすめです。

CSV一括変換時の注意点まとめ

 

注意点内容
文字コード(UTF-8推奨)Shift_JISだと文字化けリスクあり
先頭ゼロ保持(郵便番号・社員番号)必要ならPower QueryやVBAで文字列型指定して対策
ファイル名管理元CSV名をベースに保存するか、新たに命名ルールを設けると良い
フォルダ構成対象ファイルのみ置く専用フォルダを作成しておく

実務シーンでの活用例

  • 毎日ダウンロードされる売上データ(CSV)を一括でExcelに変換して、翌朝レポートを作成

  • 支店ごとの在庫データ(CSV)をまとめてExcel形式に変換してマージ

  • システムエクスポートのデータをExcelで集計・分析用に整形

「大量のCSVを1つずつ手作業で開く」作業がなくなるだけで、毎日30分~1時間の作業短縮も夢ではありません。

まとめ:CSVからExcel一括変換で作業効率を劇的にアップしよう!

CSVファイルをExcel形式に一括変換する方法をマスターすれば、

  • 手間の大幅削減

  • ヒューマンエラーの防止

  • データ整形の自動化

など、業務効率化に直結します。

最初はPower Queryで取り込み→保存、慣れてきたらVBAで完全自動化、という流れでステップアップするのがおすすめです。

    -CSVデータ操作, Excel一覧, Excel操作, データファイル操作