Pythonで複数のExcelファイルから特定の数値を合計する

Pythonで複数のExcelファイルから特定の数値の合計を出す方法

「複数のExcelファイルから、ある特定の数値を合計できないかな」

という思いつきでプログラムを作成しました。

イメージにするとこんな感じで、こちらを元にコーディングしました。

Excelのイメージ図

やり方は色々あると思いますが、こんな形で実現することができました!

※対象のExcelファイルはすべて同フォルダ内にあるものとします。

import openpyxl
from glob import glob

files=sorted(glob("*xlsx"))

SUM=0
for file in files:
    wb=openpyxl.load_workbook(file)
    ws=wb.worksheets[0]
    
    number=int(ws.cell(2,2).value.split("名")[0])
    SUM=SUM+number
    
print(SUM)

実行すると数が出力されます。(今回は7と出て正解!)

考え方

globで全てのExcelファイルを取得してopenpyxlで読込む。

今回は拡張子が”.xlsx”のファイルをすべて取得していますが、ケースバイケースで調整してください。

人数の値が入っているExcelの2行目、2列目の人数を、split関数で“名”の前の値のみを取得する。

人数を合計するために、2行目、2列目のセルを数値(int型)に変換し、numberという変数に代入。

for文を使って合計値(SUM)を計算して完成!

Pythonを使うと色々なことが実現できて、とても楽しいですね!

ABOUT US
中野友梨
旅行業の会社を運営。
慶応義塾大学卒

書類作成、確認作業などに追われる日々の仕事。
一生懸命やっているつもりだった。
計算ミス、手配ミスにヒヤヒヤする日々。
仕事の効率をなんとかしなけらばいけないと思っていたけど、 どうしたらよいのか分からなかった。
Pythonの世界なんて、全く知らなかった。
そんな私がPythonで仕事が効率化されることによって、公私ともに大きく 変わるとは、夢にも思っていなかった..。

業務効率化のためにPythonを始めたことがきっかけで、Pythonにはまりました。(個人利用レベル)
詳細はこちら

労働時間が大きく削減され、仕事が大カイゼンされて自由な時間も生まれました。
私のした素晴らしい経験を共有したい、仕事の効率が悪いけど、どうにかしたいという悩みを持った人々に向けて、 Pythonがいいよ、と教えてあげたい。
このブログでは、私が経験したエラー解決や迷い所、Pythonの活用方法をお伝えします。