見出し画像

Pythonで毎月のExcelファイル収集を自動化してみた。【経理・事務】

毎月、Excelデータを
あちこちから集めている人へ

あればコピー。なければ連絡。

また確認してコピー…

他にも作業があるのに、
このコピペ地獄から抜け出すためには、
20件、50件と必要な「データを集めるだけ」で、
1〜2時間くらいは平気でなくなります。

そんな毎月1〜2時間かかっていた
「データ探し」をPythonで効率化してみました。

1時間というのは、
...期限通りにデータがあれば、です。😭

もちろん、ない時もあります。

むしろ、ない時の方が多いです。(やめて)

改めて、
ない時には、連絡し、
データを追加してもらいます。

「追加しました」と
メールや電話で連絡をもらう。

 ↓

もう一度確認する。

 ↓

そして、コピーする。(完)

となるわけです。
支店が1〜2件なら、問題がないのですが、

でも、これが20件、50件となると話は別です。

「月初って感じがしてきたー!」と、
月初の多忙をココで感じている場合ではないです。

この後は、データの中身を確認して、
会計ソフトへ取り込む作業も待っています。

本来であれば、
取得したデータの
内容を確認することに時間を使いたい。

それなのに、その前段階の
「データを探して集める」という作業に
時間を使ってしまう。

そうなると、もちろんですが、
その後の業務にも負担がかかります。

そこで思いました。

「これ、毎回人がフォルダを探し回る必要あるのかな?」
と思っていても、なかなか仕事に追われて、
時間を作れないでいましたが、いよいよ着手しました。

Pythonにやってもらうため、
作業の内容を改めて確認しました。

順番を確認すると意外とシンプルでした。

簡単にまとめました。
①フォルダにデータがあるか確認する
②あれば、まとめフォルダへコピーした後に記録する
③なければ、連絡を取れるように記録する。

簡易まとめ

処理したい内容が決まったので、
Pythonで仕組みを作ってみることにしました。

最初は、Pythonのコードを実行して
ファイルを取得するだけでもよかったのですが、
自分以外の人でも簡単に使えることが前提です。

今回、使用したのは、
Pythonに標準で用意されている
GUIライブラリの「Tkinter」というものでした。

Tkinter test環境用

画面はこんな感じです。

最初はもちろん、何にもわかりませんでした。
ChatGPTに聞き実装してもらいながら、
不明な部分は深堀する形式で作ってもらいました。

Tkinterは見た目がかなりシンプルですが、
今回の用途では十分でした。

「何をすればいいのか分かる」
 ことを優先しました。

操作方法は、
「取得したい拠点にチェック✓を入れて、
            『データ取得開始』を押す」

データの取得条件はExcelで管理しています。
Python側はExcelに書かれている通りに
ファイルを取得する仕組みです。

・支店名
・必須/任意
・検索キーワード
・ファイルパス(データがある場所)
・保存先
・取得日時

管理表(Excel)の項目

などの条件をExcelに記入します。
全て条件内であればいくつでも、
データを取得してしまうため、
制限をかける意味で、
『最終更新日から7日以内』に絞ってます。

修正や追加したい場合は、Pythonコードをいじらずに、
Excelの設定を変更してあげることで対応とれるようにしてあります。
逆に言うと違うパターンも別の管理表を作ってあげることで対応可

使用感は、
『データ取込開始』ボタンを押すと、指示通り

各フォルダを確認して、
 必要なデータをコピーしていきます。

その間、パソコンをずっと見ている必要はありません。

会計ソフトに仕訳を入力したり、入金確認をしたり。

別の業務と、
データ取得を『並行して行える』ようになりました。

時間でいうと、
『データ取込開始』ボタンを押してから終わりまでの時間は
約20分でした。

今回の内容については、
まだまだ改良したい部分
気になる部分もありますが。

目的の
『複数の支店のフォルダを開いて、
 必要なデータを探してコピーする』

という部分は自動化できたので
 『達成』としました。

最後に
今回は、実務で使う用のPythonにしましたが、
どうやら素直にExcelVBAでも、できた模様・・・(アレ?)

実装後、そういえばExcelVBAでも出来るのかなと
ChatGPTに相談したところ出来ますよと3秒で回答があったので、、
これはExcelVBAverを作るしかないと思っております。
ここまで作ったのに、ぐぬぬ…( 一一)

★私がPythonと出会った内容を記載してます。
良かったらよろしくお願いいたします。

いいなと思ったら応援しよう!