Pythonの勉強は細々と続けています。
どうもヨスケです。
Pythonプログラミングは全く上達しませんが、
動くものは調べながら作り続けています。
今回はメンドクサイExcelの処理を
Pythonにしてもらいました。
たくさんあるExcelを一つにまとめるのを自動化したい!
シートがわかればデータを一つにまとめたい!
ファイルが2,3個だけならいいけど、
100個も1000個もファイルがあったらめんどすぎる!
ということで、以下のような仕様でプログラムを作ります。
①フォルダにマージしたいExcelファイルが格納されている状態
②スクリプトを実行すると、新たなExcelファイルを生成。
③フォルダ内のデータをすべて抽出して、新たなファイルに書き込み、保存する。
結構簡単にできそうです。
サンプルソース全部見せ
きっとネットのどこかを探せばあるかもしれませんが、
せっかく自分で作りましたし、
Pythonを勉強している人が
ちょっとでもヒットする確率が上がれば良いなと思いますので、
コードを載せます。
import os
import pandas as pd
# Excelファイルのパスを取得
path = os.getcwd()
files = [fforfinos.listdir(path) iff.endswith('.xlsx')]
# 各Excelシートを読み込み、行ごとにリスト化
all_data = []
for file in files:
df = pd.read_excel(file)
all_data += df.values.tolist()
# 書き出し用のExcelファイルを作成
output_file = 'merged.xlsx'
pd.DataFrame(all_data).to_excel(output_file, index=False)
print("Merged Excel file is created.")
実行結果:クリック1つ!最高!
実行してみました。
フォルダにたくさんExcelファイルがある状態で。。。
実行してみると、フォルダに「merge.xlsx」ができました!
さて中身は?
うん、、細かすぎてわからないですが、
全データが一つになりました!
これでめっちゃ仕事が捗ります。
また少しずつ作ったPythonプログラムを公開していこうと思います。
もしよろしければ、ブログランキングについても
ポチっとしていただければ嬉しいです。