Excelファイルをカンマ区切りのCSV形式で保存する3つの確実な方法
CSV(Comma-Separated Values:カンマ区切り値)ファイルは、値をカンマで区切ったテキストファイルです。データ分析のさまざまな場面で活躍する便利な形式ですが、用途によってはExcelファイルをCSVファイルとして保存し直す必要が生じることもあります。本記事では、Excelファイルをカンマ区切りのCSVとして保存するための、実用的な3つの方法を詳しく解説します。
練習用に、以下からワークブックをダウンロードできます。
CSVとは?
CSVとは「Comma-Separated Values(カンマ区切り値)」の略で、各値をテキスト文字列として保存し、値同士をカンマで区切る一般的なファイル形式です。さまざまなソフトウェアやプログラミング言語、たとえばPythonのPandasライブラリなどは、CSVファイルを入力データとして受け付けます。
Excelファイルをカンマ区切りのCSVとして保存する3つの方法
Excelには、ファイルをCSVとして保存するための複数の方法が用意されています。最も一般的なのは「名前を付けて保存」コマンドを使う方法ですが、データに含まれる文字の種類によっては別の方法が必要になったり、複数のワークシートを一度にCSV化したいケースもあります。ここでは、状況に応じて使い分けられる3つの方法を紹介します。
方法1:「名前を付けて保存」コマンドでカンマ区切りのCSVとして保存する
Excelファイルをカンマ区切りのCSVとして保存する最もポピュラーな方法が、「名前を付けて保存」コマンドの利用です。Excelは多彩なファイル形式での保存に対応しているため、この機能を使って簡単にCSV形式へ変換できます。ここでは、書籍名・著者名・出版年を含むサンプルデータセットを使って手順を説明します。

手順:
- まず、CSVファイルとして保存したいワークシートを開きます。
- 次に、リボンの「ファイル」タブをクリックし、「名前を付けて保存」を選択します。

- 「名前を付けて保存」ダイアログで保存先の場所を指定し、ファイルの種類として「CSV(コンマ区切り)(*.csv)」を選択します。
- その後、「保存」ボタンを押します。

- ブック内に複数のシートがある場合は通知が表示されるので、「OK」をクリックします。

- これで、指定した場所にCSVファイルが保存されます。保存されたファイルには、ワークシートで使用していた書式情報は含まれません。

- メモ帳でファイルを開くと、値がカンマで区切られていることを確認できます。

関連記事:【解決済み】Excelがカンマ区切りのCSVを保存できない場合の7つの対処法
方法2:特殊文字を含むファイルをカンマ区切りのCSVに変換する
上記の方法は、ワークシートにASCII文字のみが含まれている場合には問題なく機能します。しかし、ワークシートにUnicode文字が含まれている場合は、少し異なる方法を使う必要があります。ここでは2つの方法を紹介します。説明には中国語(標準語)を含むデータセットを使用します。
2.1 CSV UTF-8形式で保存する
Unicode文字を含むワークシートは、「CSV UTF-8」形式で保存できます。この形式ならUnicode文字が文字化けすることなく保持されます。以下の手順に従いましょう。
手順:
- まず、Unicode文字を含むワークシートを開き、カンマ区切りのCSVとして保存できる状態にします。

- 次に、リボンの「ファイル」タブから「名前を付けて保存」を選択します。
- 「名前を付けて保存」ダイアログで保存先を指定し、ファイルの種類として「CSV UTF-8(コンマ区切り)(*.csv)」を選択します。
- 続いて「保存」をクリックします。

- ブック内に複数のワークシートがある場合は通知が表示されるので、「OK」を押します。
- 最後にCSVファイルが保存されます。メモ帳で開いて確認してみましょう。
- 中国語の単語が正しく表示され、値がカンマで区切られていることがわかります。

- このファイルをExcelで開くと、以前の書式なしのデータセットが表示されます。

関連記事
- ExcelファイルをCSV形式に変換する方法(5つの簡単な方法)
- Excelを二重引用符付きのCSVとして保存する方法(3つの最も簡単な方法)
- 複数のExcelファイルをCSVに一括変換する方法(3つの適切な方法)
- Excelを開かずにCSVへ変換する方法(4つの簡単な方法)
- Excelファイルを自動的にCSVへ変換する方法(3つの簡単な方法)
2.2 CSV UTF-16形式で保存する
CSV UTF-8形式の代わりに、Unicodeを含むファイルの保存に使えるもう一つの形式があります。特にアジア系の文字を含むファイルには、「CSV UTF-16」形式が有効です。この形式も値をカンマで区切って保存しますが、各文字を16バイトで表現する点が異なります。以下の手順で、中国語を含むファイルをCSV UTF-16として保存してみましょう。
手順:
- まず、カンマ区切りのCSVとして保存したいシートを開きます。

- 次に、リボンの「ファイル」タブから「名前を付けて保存」を選択します。
- 「名前を付けて保存」ダイアログが開いたら、保存先を指定し、ファイル形式として「Unicode テキスト」を選択します。
- 続いて「保存」をクリックします。

- ブック内に複数のワークシートがある場合は通知が表示されます。
- 「OK」を押してください。
- これで、選択したワークシートの値を含むCSVファイルが保存されました。

- ただし、この時点では値がまだカンマで区切られていません。
- そこで、テキストファイル内の値と値の間にあるスペースをコピーします。
- さらに、キーボードショートカット「Ctrl + H」で「検索と置換」ダイアログを開きます。

- 次に、コピーしたスペースを「検索する文字列」欄に貼り付け、「置換後の文字列」欄にカンマ(,)を入力します。
- 続いて「すべて置換」を選択します。

- 値がカンマで区切られました。次に、このテキストファイルをCSVとして保存しましょう。

- メモ帳の「ファイル」メニューから「名前を付けて保存」を選択します。
- 次に、「ファイルの種類」で「すべてのファイル」を選択し、ファイル名の末尾に「.csv」と入力します。
- 最後に「保存」をクリックします。

- これで完了です!CSVファイルが保存できました。メモ帳で開けば、値がカンマで区切られていることを確認できます。

関連記事:Excelファイルをカンマ区切りのテキストファイルに変換する方法(3つの方法)
方法3:VBAコードでExcelファイルをカンマ区切りのCSVとして保存する
ここまで紹介した方法では、一度に1つのワークシートしか保存できませんでした。しかし、すべてのシートを1つずつ手作業で保存していては時間がかかってしまいます。そんなときは、シンプルなVBA(Visual Basic for Applications)コードを使うのが quick な解決策です。VBAコードを使ってExcelファイルをカンマ区切りのCSVとして一括保存する手順を見ていきましょう。
手順:
- まず、ブック内の任意のワークシートを開きます。
- 次に「Ctrl + F11」を押します。

- または、「開発」タブ>「Visual Basic」を選択してVBAエディターを開くこともできます。

- VBAウィンドウでアクティブなシートを選択して右クリックします。
- 続いて「挿入>標準モジュール」を選択します。

- コードウィンドウが開くので、以下のコードを記述します。
Sub Batch_Save_CSV()
Dim wsht As Worksheet
Dim file_path As String
Application.ScreenUpdating = False
file_path = ActiveWorkbook.Path & "\" & Left(ActiveWorkbook.Name, InStr(ActiveWorkbook.Name, ".") - 1)
For Each wsht In Worksheets
wsht.Copy
ActiveWorkbook.SaveAs Filename:=file_path & "_" & wsht.Name & ".csv", FileFormat:=xlCSV, CreateBackup:=False
ActiveWorkbook.Close False
Next
Application.ScreenUpdating = True
End Sub
コードの解説:
Sub Batch_Save_CSV()
Dim wsht As Worksheet
Dim file_path As String
この部分では、「Batch_Save_CSV」という名前のサブプロシージャを定義し、変数「wsht」と「file_path」を宣言しています。
Application.ScreenUpdating = False
file_path = ActiveWorkbook.Path & "\" & Left(ActiveWorkbook.Name, InStr(ActiveWorkbook.Name, ".") - 1)
For Each wsht In Worksheets
wsht.Copy
ActiveWorkbook.SaveAs Filename:=file_path & "_" & wsht.Name & ".csv", FileFormat:=xlCSV, CreateBackup:=False
ActiveWorkbook.Close False
Next
Application.ScreenUpdating = True
End Sub
そしてこの部分では、ブック内の各シートに対してループ処理を行い、それぞれのファイル形式をCSVに変更しています。
- 次に、VBAウィンドウの「実行」ボタンをクリックします。

- すると、ブック内の各シートがカンマ区切りのCSVファイルとして保存されているのが確認できます。メモ帳でファイルを開けば変化をチェックできます。
- こちらが「Sheet1」のCSVファイルです。

- そしてこちらが「Sheet4」のCSVファイルです。

関連記事:Excelをカンマ区切りのCSVファイルに変換する方法(2つの簡単な方法)
CSVファイルのメリット
- さまざまなプラットフォームのユーザーが利用できる汎用性の高い形式です。
- ファイルの扱いや整理が簡単です。
- 多くのソフトウェアやプログラミング言語が入力データとして利用できます。
まとめ
Excelファイルからカンマ区切りのCSVファイルを作成するには、いくつかの方法があります。本記事では、その中でも実用的な3つの方法を詳しく解説しました。手順の途中でわからない点や問題が発生した場合は、ぜひコメントでお知らせください。ExcelDemyサイトでは、Excelに関する記事を多数公開していますので、そちらもぜひご覧ください。
関連記事
- ExcelからCSVファイルを作成する方法(6つの簡単な方法)
- 連絡先用のCSVファイルをExcelで作成する方法(簡単な手順つき)
- ExcelのCSVで先頭のゼロをプログラム的に保持する方法
- Excel VBAを使ってテキストファイルに書き込む方法
- マクロでExcelをパイプ区切りのテキストファイルに変換する方法(3つの方法)
- マクロで複数のExcelファイルをCSVファイルに一括変換する方法
-
ExcelでCSVファイルを並べ替える方法|初心者でもできる2つの簡単な手順
ExcelでCSVファイルを扱う場面は非常に多くあります。氏名や住所のデータ、商品情報、リスト管理など、さまざまな用途で活用されています。しかし、データ量が大きくなると操作が少し複雑になり、CSVファイルを並べ替え(ソート)する必要が出てきます。この記事では、ExcelでCSVファイルを並べ替える2つの簡単な方法を、手順を追ってわかりやすく解説します。 練習用に、サンプルファイルをダウンロードしてご利用ください。 CSVファイルとは? 並べ替えの手順に入る前に、まずCSVについて簡単におさらいしましょう。CSVは「Comma Separated Values(カンマ区切り値)」の略で、データを
-
ExcelでCSVファイルを整形する方法|カンマ区切り・引用符付きの2つの実例で解説
氏名、住所、商品情報などのデータを扱う際、テキストファイルとして保存することがあります。このようなテキストファイルが「CSVファイル」です。しかし、Excelに正確に取り込むためには、CSVファイルを適切な形式に整形する必要があります。本記事では、ExcelでのCSVファイルの整形方法を、2つの具体例を使ってわかりやすく解説します。 CSVファイルとは? CSVは「Comma Separated Values(カンマ区切り値)」の略称で、データを特定の区切り文字で分割したシンプルなテキストとして保存する形式です。Excelユーザーの間では、CSVファイルの取り扱いは非常に一般的な作業となってい
