提出確認に溶ける時間
提出期限の三日前。総務部の朝は、静かな戦争から始まる。ディスプレイに映るのは、全拠点の名前が並んだマスタデータのエクセル。もう片方の画面には、ひっきりなしに届く提出完了メールの受信トレイ。私の仕事は、この二つを神経衰弱のように見比べ。まだファイルを提出していない拠点を探し出すことだ。マウスを握る手にじっとりと汗が滲む。
「A拠点は…ファイル名に拠点名あり。OK」「B拠点は…メールは来ているが添付がないぞ?」「C拠点からは…そもそもメール自体が来ていない」。一件一件、目視で確認し、マスタデータの横に手入力でフラグを立てていく。単純作業のはずなのに、異常なほど神経をすり減らす。集中力が途切れた瞬間に見落としが発生し、それが後々のトラブルに繋がるからだ。カタカタとキーボードを叩く音だけが響くオフィスで、一人。
ディスプレイの中の膨大な情報と格闘する。
無駄な探索作業で溶けた時間
まず、支社からの電話一本で、それまでの確認作業がすべて水泡に帰したことがある。「件名のルールを間違えて送ってしまいました!」という悪びれない声。急いで受信トレイを検索し直すが、目的のメールは見つからない。結局、送信済みアイテムまで探してもらい、ようやく発見できたのは一時間後。その時点で、どこまでチェックしたのか完全にわからなくなり。また最初からやり直す羽目になった。
あの時の、体から力が抜けていく感覚は今でも忘れられありません。
気がつけば、窓の外はすっかり明るくなり、時計の針は昼休みを示している。しかし、私の手元にあるのは。まだマーカーだらけで完成には程遠いチェックリストだけ。午前中の時間をすべて費やして。やったことといえば「誰が提出していないか」を探し続けただけだった。本来やるべき催促の連絡や、提出された内容の確認は全く手付かず。この付加価値を生まない探索作業に、一体どれだけの時間を溶かしてきたのだろうか。
胃のあたりが重くなるのを感じながら、溜息をついた。
人為的な曖昧さが招く特定作業の弊害
この延々と続く確認作業の問題は、単に時間がかかることだけではない。もっと根深い問題は、業務の本来の目的を見失わせてしまう点にある。催促業務とは、本来、提出が遅れている相手に対して、リマインドを送ったり。何か困っていることがないかヒアリングしたりする「フォロー」が本質のはずだ。しかし、現状は違う。業務時間の大部分が、フォロー対象者を「特定」するための探索に消えていく。
次に、ようやく未提出者リストが完成する頃には、心身ともに疲れ果てている。そこから個別にメールを送る気力など、ほとんど残っていない。結果として、送るメールは「提出をお願いします」という定型文だけになりがちだ。相手の事情を慮ったり、提出物の書き方で悩んでいないか気にかけたりする余裕はない。これでは、ただの機械的なリマインダーであり。
円滑な業務推進をサポートするという総務の役割を果たしているとは言えありません。
3時間
曖昧さが招く特定作業の複雑怪奇
そもそも、なぜこの特定作業はこれほどまでに困難を極めるのか。原因は、人間が介在することによる「曖昧さ」にある。メールの件名、添付ファイル名、送信者の名前。こちらがルールを定めても、全拠点がそれを完璧に守ってくれるわけではない。全角と半角の違い、不要なスペース、拠点名の僅かな表記ゆれ。機械にとっては明確な違いでも、人間の目には同じに見えてしまう。これらの無数の「ノイズ」が。
単純なはずの突合処理を複雑怪奇なパズルへと変えてしまっていたのだ。このままでは、いつまで経っても「探す」という不毛な時間から抜け出せない。業務の本質である「フォロー」に注力するためには。この特定作業から人間を完全に排除する仕組みが必要だった。

Pythonセット型、完璧な未提出者リスト
一方で、人間がやると複雑でミスの多い照合も、コンピュータにとっては朝飯前だ。特に、プログラミング言語であるPythonは。こうしたデータ処理を驚くほどシンプルに記述できる。私がたどり着いた解決策は、二つのリストを用意し、それらを「差し引く」という。あまりにも単純な発想だった。
一つ目のリストは、提出すべき全拠点の名前が記載された「マスタデータ」。これは、あるべき姿、つまり「正解」のリストである。もう一つは、実際に提出があったファイルのファイル名から抽出した拠点名のリスト。こちらは「現状」のリストだ。この二つがあれば。「正解」のリストから「現状」のリストに含まれる要素をすべて取り除くだけで。残ったものが「未提出者リスト」になる。
Pythonセット型:差分検出の絶対的正確性
この「差分を求める」処理を、Pythonは驚くほどエレガントに実行する。特に「セット型(set)」と呼ばれるデータ構造を使えば。まるで二つの名簿を重ね合わせ。名前が一致しない人だけを瞬時に抜き出すような操作が可能になる。複雑な条件分岐を延々と書く必要はない。たった数行、場合によってはたった一行のコードが。これまで何時間もかかっていた目視確認を代替する。

そのため、この仕組みの美しさは、その完璧さにある。人間の目では見逃してしまうような些細な違いも、プログラムは見逃さない。逆に、プログラムが「未提出」と判断したものは、紛れもなく未提出なのだ。そこには、勘違いや思い込みといったヒューマンエラーが介在する余地は一切ない。この機械的な正確さこそが。延々と続く確認作業のループから私を解放してくれる唯一の鍵だった。
そして、この魔法を実現するのに必要なコードは。わずか10行程度に過ぎなかったのです。
提出ファイル自動チェックと命名規則
具体的な仕組みはこうだ。まず、提出されたファイルが格納されている共有フォルダをPythonに覗きに行かせる。ここで活躍するのが「osライブラリ」である。このライブラリの`os.listdir`という命令を使えば、指定したフォルダ内にあるファイルやフォルダの名前を、すべてリストとして取得できる。これは、人間がフォルダを開いてファイル名を一つずつコピーする作業を、一瞬で完了させることに等しい。
次に、取得したファイル名のリストから、拠点名だけを抜き出す作業が必要になる。ここで重要になるのが、ファイル名の命名規則だ。「『A拠点』業務報告.xlsx」「『B拠点』月次レポート.pdf」のように。ファイル名の先頭に必ず拠点名を付ける、というルールを徹底する。このルールさえ守られていれば。プログラムは単純な文字列操作で「A拠点」「B拠点」という部分だけを正確に抽出できる。
命名規則整備とPythonで未提出者リスト
しかし、最初は命名規則が徹底されず、一部のファイルから拠点名がうまく抽出できなかった。エラーログを見ると、全角の括弧『と半角の括弧[]が混在していたり。拠点名の後に不要なスペースが入っていたり。結局、全拠点に命名規則の重要性を改めて説明し。サンプルファイル名を提示することで解決した。自動化は。こうした地味なルール作りとセットで初めて機能することを痛感した瞬間だった。』
拠点名のリストが二つ(マスタデータと、ファイル名から抽出したリスト)揃えば。あとはクライマックスだ。Pythonの「セット型(set)」に二つのリストを変換し、差分を求める。さらに「リスト内包表記」というテクニックを使えば、フィルタリングや加工をしながら。新しいリストを効率的に作成できる。これらの機能を組み合わせることで、「マスタリストには存在するが。
提出済みリストには存在しない拠点名」だけを抜き出した。完璧な未提出者リストが完成する。これまで半日かけて行っていた作業が、わずか数行のスクリプトに凝縮されるのです。

1ボタン自動化:時短と人間らしい仕事
このPythonスクリプトを。ダブルクリックするだけで実行できるように「バッチファイル」に仕立て上げた。今では、私の朝の業務は劇的に変わった。出社後、共有フォルダに置かれたバッチファイルをダブルクリックする。黒い画面が一瞬表示されて消え。次の瞬間にはデスクトップに「未提出者リスト.txt」という名前のテキストファイルが生成されている。実行時間は、文字通り1秒。

さらに、ファイルを開くと、そこには催促が必要な拠点名だけが。改行されてきれいにリストアップされている。もう、マスタデータと受信トレイを血眼になって見比べる必要はない。リストに名前がある拠点、それが今日のターゲットだ。このリストをコピーし、メーラーの宛先欄に貼り付ける。これで催促の準備は完了。これまで午前中いっぱいかかっていた作業が、たったの1ボタン。数秒で終わるようになった。
ここで一度立ち止まって考えてみてください
Pythonや自動化スキルを体系的に習得して、ITエンジニアとしてのキャリアを切り開きたい方には「Enjoy Tech!(エンジョイテック)」が選択肢のひとつです。
自動化がくれた人間らしい仕事
この変化は、単なる時短以上の意味を持っていた。私の仕事は、もはや「誰が未提出かを探す」という探索作業ではなくなった。システムが提示したリストに基づき。「どう働きかけるか」を考える「発信」作業へとシフトしたのだ。時間に追われることがなくなり、精神的な余裕が生まれた。その結果、各拠点の状況に合わせてメールの文面を少し変えたり。提出が遅れがちな拠点には電話でフォローを入れたり。
といった血の通った対応ができるようになった。自動化は、私から単純作業を奪い。代わりに人間らしい仕事をする時間を与えてくれたのである。この、1ボタンですべてが整う快感は、一度味わうと二度と元には戻れありません。
自動化が生む円滑な関係
自動化がもたらした副次的な、しかし非常に大きな効果は。各拠点との信頼関係が向上したことだった。手作業でリストを作成していた頃は、どうしてもミスが避けられなかった。「提出したはずなのに、未提出者リストに入っている」というクレームの電話は。月に一度は必ずあった。そのたびに平謝りし、受信トレイを再検索して事実確認に追われる。こうしたやり取りは、双方にとって気分の良いものではない。
現場には「本社の管理はずさんだ」という不信感が。こちらには「またミスをしてしまった」という自己嫌悪が募っていく。
しかし、Pythonによる自動突合を導入してからは、状況が一変した。プログラムは。フォルダ内に存在するファイルという客観的な事実に基づいてリストを生成する。そこに、人間の勘違いや見落としが入り込む隙はない。「このリストは。プログラムが機械的にファイル名の有無をチェックした結果です」と説明すると。現場の担当者も納得してくれるようになったのです。
間違いのないリストが築く、摩擦なき協力関係
ある日、リストを元に催促の連絡を入れたところ、「いや。絶対に送りましたよ!」と強く反論されたことがあった。以前ならここで慌てていたが、今は違う。「恐れ入りますが。共有フォルダに〇〇というファイル名のファイルが見当たらないようです。お手数ですが。送信履歴やファイル名をご確認いただけますでしょうか」と冷静に対応できた。数分後、「すみません!ファイル名を間違えていました!」と訂正の連絡が来た。
客観的なデータがあることで、不毛な水掛け論を避け。建設的な対話ができるようになった。
「間違いのないリスト」は、コミュニケーションの土台となる。リストに名前が載っていれば、それは紛れもない事実として受け止められる。これにより、「提出した、していない」という低レベルな議論がなくなり。もっと本質的な話。例えば「提出内容で困っていることはないか」「期限の延長は必要か」といった前向きな対話に時間を使えるようになった。
自動化は、単に業務を効率化するだけでなく、人と人との間の無用な摩擦を減らし。円滑な協力関係を築くための潤滑油としても機能してくれたのです。

自動化で得た心の余裕
まず、振り返ってみると、この仕組みが私にもたらした最大の恩恵は。労働時間の短縮ではなかったかもしれない。もちろん、毎日数時間の時間を節約できたことは大きい。しかし、それ以上に価値があったのは。「もしかしたら見落としているかもしれない」という。あの常に頭の片隅にまとわりつくような不安から解放されたことだ。つまり、自動化が本当に削ってくれたのは、時間という物理的なコスト以上に。
「悩む」という精神的なコストだったのです。
80%
手作業での確認は、常に疑心暗鬼との戦いだ。チェックリストを何度も見返し、「本当にこれで全員か?」「あのメール。ちゃんと確認したか?」と自問自答を繰り返す。そのプレッシャーは、じわじわと精神を蝕んでいく。一方、プログラムは迷わない。ルールに従って淡々と処理を実行し、絶対的な正解を叩き出す。その揺るぎない正確性に、業務のすべてを委ねることができる。この安心感は、何物にも代えがたい。
自動化で思考解放、人間らしい仕事
次に、「誰がまだか」と悩む必要がなくなったことで、私の思考は解放された。空いた時間と集中力を、どうすればもっと業務がスムーズに進むか。どうすれば現場の負担を減らせるか。といった創造的なテーマに向けることができるようになった。自動化とは、単に作業を機械に置き換えることではない。それは、人間が人間らしく。付加価値の高い仕事に集中するための環境を整えるための強力な手段なのだ。
もしあなたが、かつての私のように。終わりの見えない確認作業に心をすり減らしているのなら。その苦しみはPythonが解決してくれるかもしれありません。
仕組みが育む心理的安全性
さらに踏み込んで言えば。この仕組みがチーム全体の「心理的安全」を高めることにも繋がったと感じている。以前は催促する側もされる側も。「ミスがあるかもしれない」という不安の中でやり取りをしていた。しかし、機械による正確なリストが介在することで、感情的な対立が消え。純粋に「業務を前に進めるための協力」というマインドセットに切り替わったのです。
誰かが特別に頑張るのではなく、仕組みが淡々と正解を出す。この「仕組みへの信頼」があるからこそ、人間はより高度で。より温かみのあるコミュニケーションに時間を使えるようになる。自動化がもたらす最大の価値は。実はこうした「チーム内の空気の変化」にあるのかもしれない。もしあなたが今、孤独な確認作業に疲れているのなら。ぜひこの「好循環」の入り口に立ってみてほしい。
未提出者リスト自動化への第一歩
一方で、最後に。今回紹介した「未提出者リストの自動作成」を自分の業務に取り入れるためのステップを整理しておこう。一気にすべてをやろうとせず、まずは身近なところから手を付けるのが成功の近道です。
1. **命名規則を統一する**: プログラムが正しく動くための大前提だ。全拠点に対して。「[拠点名] ファイル名」という形式で提出するよう徹底をお願いしよう。これができれば、業務の半分は終わったも同然だ。2. **マスタデータを用意する**: 誰が提出すべきなのか。その正解リストをエクセルで作っておく。Vlookupで照合していた時と同じもので構わない。
これがPythonにとっての「比較対象」になる。3. **Pythonで差分を抽出する**: フォルダ内のファイル名を取得し。マスタと突き合わせる。最初は難しく感じるかもしれないが、今回紹介した「セット型」を使えば。驚くほど短いコードで実現できる。
自動化の未来と次なる一歩
さらに、将来的な拡張性についても触れておきたい。今回は未提出者の抽出までだが。このリストを元に「自動で催促メールの下書きを作成する」といった次のステップへ進むこともPythonなら容易だ。一つの小さな自動化が、次なる効率化のアイデアを呼び。あなたの業務全体をよりスマートなものに変えていく。その第一歩として、この「1秒で終わるリスト作成」は最高の題材と言えるだろう。
そのため、「探す」という作業を機械に任せる。たったそれだけのことで、あなたの催促業務は驚くほど軽やかになるはずだ。まずは今日、フォルダの中にあるファイル名を見つめることから始めてみてほしい。その先には、今まで想像もできなかった「余裕のある朝」が待っているはずです。
Pythonで始める業務改善の第一歩
自動化は決して、プロフェッショナルなエンジニアだけの特権ではない。私たちのような、現場で悩み、汗をかきながら業務を回している人こそ。その恩恵を最も受けるべきなのだ。この「未提出者リストの自動作成」が、あなたの業務をよりクリエイティブで。より心地よいものに変えるための小さな。しかし確実な一歩になることを願ってやまない。さあ、Pythonの魔法を、あなたのデスクにも。
そして、この記事があなたの最初の一歩となり。より自由で創造的な働き方を手に入れるきっかけになることを願ってやまない。業務の自動化は、あなた自身の成長だけでなく。周囲のメンバーにとってもプラスの影響を与える素晴らしい挑戦だ。まずは身近な小さな成功体験を積み重ね、自信を持って次のステップへ進んでいこう。あなたの挑戦を、心から応援している。
一歩踏み出す勇気が、あなたのキャリアを大きく変えるきっかけになるはずだ。明るい未来を信じて、まずは小さなコードを動かすことから始めてみよう。あなたの踏み出すその一歩が、大きな変化の始まりとなる。明日からの業務が、今までより少しでも楽しく、充実したものになることを願っている。あなたのこれからの活躍を、心から信じている。
Pythonで始める業務改善の第一歩(続き)
応援している。さあ。一緒に頑張ろう!GO!! DONE.📘 このスキルを活かしてさらに前へ進むならPythonをもっと体系的に理解したい方には。実務向けの技術書で土台を固めるのも有効です。Amazonでは「Python 業務自動化」に関する評価の高い書籍が豊富に揃っています。Python業務自動化の技術書(Amazon) →
📘 このスキルを活かしてさらに前へ進むならPythonによる業務自動化を最短・最安で学びたい方には。UdemyのPython実践講座がコスパ最高です。セール時は¥1,500〜で。ExcelやメールをPythonで自動化する具体的な手順を動画で学べます。Udemy(Python実践・業務自動化) →
📘 このスキルを活かしてさらに前へ進むならPythonやVBAを体系的に学びたい方には「SAMURAI ENGINEER」のマンツーマン指導が効果的です。
自分の業務で使うコードを講師と一緒に作りながら学べるため。「独学で挫折した」という方でも確実にスキルを習得できます。SAMURAI ENGINEER(Pythonコース) →
関連リンクとチェックリスト
関連リンクとチェックリスト
著者はこうして解決の糸口を見つけた
著者も同じ境遇から始まりました
著者も同じ境遇から始まりました。独学でここまで自動化した道のりを参考にしてみてください。
学習サービスとアンケート
学習サービスとアンケート
このスキルを活かしてさらに前へ進むなら
Pythonや自動化スキルを体系的に習得して、ITエンジニアとしてのキャリアを切り開きたい方には「Enjoy Tech!(エンジョイテック)」が選択肢のひとつです。

