Python(openpyxl) 複数シートのデータを1シートにまとめる

Python(openpyxl) -複数シートのデータを1シートにまとめる-アイキャッチ Python

Pythonで、複数シートのデータを1シートにまとめる方法をご紹介します。

ぜひお試しください。

複数シートのデータを1シートにまとめる

以下のコードを実行すると、複数シートを読み込んで1枚に連結します。


import openpyxl

wb = openpyxl.load_workbook("C:/Users/xxx/Desktop/test/test.xlsx")

matome = wb['まとめ']

#全シートをループ
for ws in wb.worksheets:

    #「まとめ」シート以外だったら
    if ws.title !="まとめ":

        #wsの行をループ
        for row in ws.iter_rows():

            #行のデータを取得
            cells = [v.value for v in row]

            for cell in row:

                #wsのデータを「まとめ」シートに転記
                matome.append(cells)
                break

#別名で保存
wb.save("C:/Users/xxx/Desktop/test/まとめ.xlsx")

 

コード実行前

「Sheet1」「Sheet2」「Sheet3」は、A~D列までデータが入っています。

最終行はシートによって異なります。


 

コード実行後

「Sheet1」「Sheet2」「Sheet3」のA~D列のデータを、

「まとめ」シートにすべて転記します。


 
 

動作環境
Python 3.7.4
openpyxl 3.0.5

この記事がお役に立ちますと幸いです。
 
・【Python】エクセルを自動処理する方法まとめ
 

【Python】エクセル処理を自動化:超便利55選
...

 

「Python 1年生 体験してわかる!会話でまなべる!」

初めての方でも安心して取り組めるように丁寧に解説
簡単なサンプルを作りながら、対話形式でプログラミングまで紹介
人工知能の導入としてもオススメの1冊です!