実行したが何も表示されていない、エラーメッセージもなし

前提

Pythonを用いて、Excelで集計を行っています。
フォルダ内にある複数(1000以上)のExcelファイルを1つのExcelファイルにまとめたいと考えています。
1段目では、ライブラリをインポートをしています。
2段目では、対象フォルダとその保存先、保存ファイル名を指定しています。
3段目では、フォルダ内にあるExcelファイルを列挙、各Excelを1つずつ、中身を次々と読んでいく。
4段目では、実行するプログラムです。
フォルダ内にある全てのExcelファイルの中身は52行×30列のデータで、このExcelファイルが1000個以上あります。このデータを新規Excelに1ファイルを1行で集計したいと考えています。成功例は画像のように1行目に1ファイル目、2行目に2ファイル目、・・・となるようにしたいです。イメージ説明
このプログラミング自体はネットから取ってきており、実際に使えることは1つのファイルを用いて確認済みなのですが、フォルダ内にある複数のExcelファイルで実行できるようにしたいのですが、上手くいきません。

実現したいこと

まとめとして、
フォルダ内にある全てのExcelファイルに4段目のプログラミングを実行できるようにしたいです。また、成功例として、画像のように1行に1ファイルとなるように集計したいと考えています。
どのようにすれば出来るのでしょうか。教えていただきたいです。

該当のソースコード

コード import openpyxl as px import os import glob from openpyxl import Workbook #対象ファイルが格納されているフォルダ target_dir = 'C:/Users/student/Documents/MyPython/hukusu' #保存先 save_file = 'C:/Users/student/Documents/MyPython/hukusu/まとめ.xlsx' #「まとめ.xlsx」作成 wb = px.workbook() ws = wb.active #「target_dir」にあるエクセルファイル一覧を取得 files = glob.glob(target_dir + '/*.xlsx') #「target_dir」にあるエクセルファイルを読み込む for fname in files: book = px.load_workbook(fname, data_only=True) sheet = book.active #行をループして、コピー&ペースト n=1 t=30 for i in range(1,53): for j in range(1,31): copy = ws.cell(row=i,column=j).value #j+t*(n-1)これにより1列目からスタートできる。2列目は+1する。 ws.cell(row=1,column=j+t*(n-1)+1,value=copy) n+=1 wb.save(save_file)

コメントを投稿

0 コメント