Pythonで、エクセルをCSV出力するコードをご紹介します。
ぜひ、お試しください。
ExcelをCSV保存(特定シート)
以下のコードを実行すると、特定のシートをCSV保存します。
import pandas as pd
TargetPath = 'C:/Users/xxx/Desktop/test/test.xlsx'
TargetName = 'Sheet1'
# Excelファイルの読み込み
data = pd.read_excel(TargetPath, TargetName, index_col=None)
# CSV形式で出力
data.to_csv(TargetName + '.csv', encoding='shift_jis', index=False)
コード実行後
エクセルファイルの特定シートをCSVで出力します。
作成されるCSVは、「Sheet1.csv」というファイル名で保存します。
ExcelをCSV保存(特定シート)
以下のコードを実行すると、特定のシートをCSV保存します。
import pandas as pd
TargetPath = 'C:/Users/xxx/Desktop/test/test.xlsx'
input_file = pd.ExcelFile(TargetPath)
sheet_names = input_file.sheet_names
#配列ループ
for i in range(0,len(sheet_names)):
if sheet_names[i] == 'Sheet1':
# Excelファイルの読み込み
data = pd.read_excel(TargetPath, sheet_names[i], index_col=None)
# CSV形式で出力
data.to_csv(sheet_names[i] + '.csv', encoding='shift_jis', index=False)
break
コード実行後
ファイル内のすべてのシート名をループして、指定シートがあった場合にCSVを作成します。
この場合は「Sheet1」シートをCSVで保存します。
作成されるCSVは、「Sheet1.csv」というファイル名で保存されます。
ExcelをCSV保存(全シート)
以下のコードを実行すると、全てのシートを一括でCSV保存します。
import pandas as pd
TargetPath = 'C:/Users/xxx/Desktop/test/test.xlsx'
input_file = pd.ExcelFile(TargetPath)
sheet_names = input_file.sheet_names
#配列ループ
for i in range(0,len(sheet_names)):
# Excelファイルの読み込み
data = pd.read_excel(TargetPath, sheet_names[i], index_col=None)
# CSV形式で出力
data.to_csv(sheet_names[i] + '.csv', encoding='shift_jis', index=False)
コード実行後
ファイル内のすべてのシート名をループして、CSVを作成します。
ExcelをCSV保存(左端のシート)
以下のコードを実行すると、一番左にあるシートをCSV保存します。
import pandas as pd
TargetPath = 'C:/Users/xxx/Desktop/test/test.xlsx'
# Excelファイルの読み込み
data = pd.read_excel(TargetPath, sheet_name=0, index_col=None)
# CSV形式で出力
data.to_csv('まとめ.csv', encoding='shift_jis', index=False)
コード実行後
[sheet_name=0] は、”一番左のシート” を指定しています。
この場合は「Sheet1」シートをCSVで保存します。
作成されるCSVは「まとめ.csv」というファイル名で保存されます。
ExcelをCSV保存(右端のシート)
以下のコードを実行すると、一番右にあるシートをCSV保存します。
import pandas as pd
TargetPath = 'C:/Users/xxx/Desktop/test/test.xlsx'
input_file = pd.ExcelFile(TargetPath)
sheet_names = input_file.sheet_names
# Excelファイルの読み込み
data = pd.read_excel(TargetPath, sheet_name=len(sheet_names)-1, index_col=None)
# CSV形式で出力
data.to_csv('まとめ.csv', encoding='shift_jis', index=False)
コード実行後
[sheet_name=len(sheet_names)-1] は、”一番右のシート” を指定しています。
この場合は「Sheet4」シートをCSVで保存します。
作成されるCSVは「まとめ.csv」というファイル名で保存されます。
この記事がお役に立ちますと幸いです。
・【Python】エクセルを自動処理する方法まとめ
「PythonでExcel、メール、Webを自動化する本」
準備に時間をかけず、すぐ始められます
実践的な例題で、実務で本当に使えるプログラムを紹介
自分の仕事を効率化したい方の大きな武器になるオススメの1冊です!