Python + ChatGPTで業務ツールを自作する方法【総務部で活用した経験】

「Pythonで自動化ツールを作りたいけど、コードが書けない」
「エンジニアに頼んだら後回しにされた」
「既製ツールでは自社の業務フローに合わない」

この記事を書いている私も、同じ壁にぶつかったことがあります。

最初に作ったのは名簿の重複チェックツールでした。
コードは全部ChatGPTに書いてもらいました。

この記事では、Pythonで自分専用ツールを作って今日から実務で動かすための手順を解説します。

コードを自分で書く必要はありません。
ChatGPTとGoogle Colabがあれば、今週末に完成します。

参考にしてみてください。

結論:総務ツール自作の最短ルート

  • Step1:Google Colabを開く(インストール不要) | 5分
  • Step2:ChatGPTに「このツールを作って」と伝える | 10分
  • Step3:生成されたコードをColabに貼り付けて動かす | 15分
  • Step4:自社のCSV・ファイルパスに書き換える | 30分
  • Step5:Windowsタスクスケジューラで定期実行設定 | 20分

「コードを理解してから作る」は不要です。動いたら使う、が最速です。

総務担当がツールを自作する3つのメリット

メリット1:エンジニアに頼まずに今日動かせる

「このExcelを毎月自動集計したい」をエンジニアに依頼すると、
「コストメリットは?」と言われ返答に困ることありませんか?

自作ならまず試してみることができます。

メリット2:自社業務に完全に合わせられる

既製ツールでは「列名が違う」「出力形式が決まっている」という制約があります。自作ツールは自社のCSV形式・フォルダ構造・命名規則に完全対応できます。

メリット3:無料で作れて維持費ゼロ

Python・Google Colab・ChatGPT(無料版)はすべて無料です。
月額費用は0円。一度作れば何回でも使えます。

ただし、使って良いかは一度、確認はしておいた方が良いです。

自作ツールの作り方:ChatGPT×Colab 3ステップ

Step1:Google Colabを開く

インストールは不要です。

  1. colab.research.google.comにアクセス
  2. Googleアカウントでログイン
  3. 「新しいノートブック」を作成

Step2:ChatGPTにツールの仕様を伝える

以下のテンプレートをChatGPTにそのまま貼り付けて、業務内容を書き換えてください。以下の仕様で総務業務用のPythonツールを作ってください。

 

Google Colabでそのまま実行できるPythonコードを書いてください。

## 前提
- 実行環境は **Google Colab**
- **初心者でも分かるように**
- **日本語のコメントを多めに**つけてください
- **1セルずつ順番に実行できる形**にしてください
- 必要に応じて、**最初にライブラリのインストールセル**も用意してください

## 作ってほしいもの
【ツールの目的】
(ここに目的を書く)

## 入力ファイル
(ここに入力ファイル名や列名を書く)

## 出力
(ここに出力内容を書く)

## 実装ルール
- ファイルは **Colab上でアップロードして使う方式**にしてください
- 出力ファイルは **処理後に自動保存**してください
- 最後に **ダウンロードできるコード**も入れてください
- **エラーが起きやすい箇所には丁寧な日本語コメント**をつけてください
- 可能なら **printで処理状況が分かるように**してください

## 追加で考慮してほしいこと
- 入力ファイルに **空欄や表記ゆれ**があっても、できるだけ安全に処理してください
- 指定した列が存在しない場合は、**分かりやすいエラーメッセージ**を表示してください
- コードの最後に、**このコードで何をしているかの簡単な説明**も付けてください

Step3:生成されたコードをColabに貼り付けて実行

ChatGPTが出してきたコードをそのままColabのセルに貼り付けて Ctrl+Enter を押すだけです。エラーが出たら、エラーメッセージをChatGPTにそのまま貼れば修正版が出てきます。

【完成コード3選】総務で実際に使えるツール

ツール1:名簿の重複メールアドレスチェッカー

使うシーン: 採用候補者名簿・社員名簿・取引先リストの重複チェック

import pandas as pd

# ===書き換えポイント①:ファイル名===
df = pd.read_csv("名簿.csv", encoding="utf-8-sig")

# ===書き換えポイント②:チェックする列名===
check_col = "メールアドレス"

# 重複行を抽出
duplicates = df[df.duplicated(subset=[check_col], keep=False)]

if len(duplicates) == 0:
    print("重複なし:名簿はクリーンです")
else:
    print(f"{len(duplicates)}件の重複を検出しました")
    # ===書き換えポイント③:出力ファイル名===
    duplicates.to_csv("重複_検出結果.csv", index=False, encoding="utf-8-sig")
    print("重複_検出結果.csv に保存しました")

詳しい手順・業務シーン別コードはこちら→ Pythonで重複チェックを自動化する方法

ツール2:勤怠データ月次集計ツール

使うシーン: 各部署から集めたExcelの月次勤怠データを1ファイルに統合

import pandas as pd
import glob

# ===書き換えポイント①:Excelが保存されているフォルダパス===
folder_path = r"C:\業務\勤怠‚6年3月"

# フォルダ内の全Excelファイルを読み込んで縦結合
files = glob.glob(folder_path + r"\*.xlsx")
df_list = [pd.read_excel(f) for f in files]
df_all = pd.concat(df_list, ignore_index=True)

# ===書き換えポイント②:出力ファイル名===
output_path = folder_path + r"\集計結果_2026年3月.xlsx"
df_all.to_excel(output_path, index=False)
print(f"{len(files)}ファイルを統合しました → {output_path}")

詳しい手順はこちら→ データ整理を効率化するツールと仕組み化の手順

ツール3:備品申請確認メール一括送信ツール

使うシーン: 備品申請リストのCSVをもとに申請者全員へ確認メールを送る

import pandas as pd
import smtplib
from email.mime.text import MIMEText

# ===書き換えポイント①:送信元のGmailアドレスとアプリパスワード===
FROM_ADDRESS = "soumu@gmail.com"
APP_PASSWORD = "xxxx xxxx xxxx xxxx" # Googleアカウントのアプリパスワード

# ===書き換えポイント②:申請リストCSVのファイル名===
df = pd.read_csv("備品申請リスト.csv", encoding="utf-8-sig")
# 列名:「氏名」「メールアドレス」「申請品目」「申請数量」

for _, row in df.iterrows():
    # ===書き換えポイント③:メール本文===
    body = f"""{row['氏名']} 様

備品申請({row['申請品目']} {row['申請数量']}個)を受け付けました。
確認後、1週間以内に発送いたします。

総務部
"""
    msg = MIMEText(body, 'plain', 'utf-8')
    msg['Subject'] = f"【総務】備品申請を受け付けました|{row['申請品目']}"
    msg['From'] = FROM_ADDRESS
    msg['To'] = row['メールアドレス']

    with smtplib.SMTP_SSL('smtp.gmail.com', 465) as smtp:
        smtp.login(FROM_ADDRESS, APP_PASSWORD)
        smtp.send_message(msg)
        print(f"{row['氏名']}({row['メールアドレス']})に送信完了")

print("全員への送信が完了しました")

詳しい手順はこちら→ 定型メールを自動化する方法

自作ツールを「メンテできる状態」で運用する方法

ツールを作ったあとに一番困るのが「半年後に動かなくなった」「列名が変わって壊れた」というケースです。

メンテ方法:壊れたらChatGPTに渡すだけ

エラーが出たら以下を丸ごとChatGPTに貼ります。

以下のPythonコードが動かなくなりました。修正してください。

【エラーメッセージ】
(エラー文をそのままコピー)

【コード】
(コード全文をコピー)

【変更した内容】
(例:CSVの列名を「メール」から「メールアドレス」に変えた)

これで修正版が出てきます。コードの中身を理解する必要はありません。

引き継ぎ用のコメントを入れておく

各コードの「書き換えポイント」のコメント(上記の ===書き換えポイント①=== の部分)は残しておいてください。異動・引き継ぎのときに後任者がどこを変えれば動くかすぐわかります。

Windowsタスクスケジューラで毎月自動実行する設定

Google Colabでの動作確認ができたら、Windowsに Python をインストールしてタスクスケジューラで定期実行できます。

手順

  1. python.org から Python をダウンロードしてインストール(「Add to PATH」にチェック)
  2. コマンドプロンプトで pip install pandas openpyxl を実行
  3. コードを .py ファイルとして保存(例:check_duplicates.py
  4. タスクスケジューラで「毎月1日 9:00に実行」を設定
# タスクスケジューラの「プログラム/スクリプト」欄に入力
python

# 「引数の追加」欄に入力
C:\業務\ツール\check_duplicates.py

詳しい設定手順はこちら→ フォルダ整理を自動化する方法4選

よくあるエラーとChatGPTでの解決方法

Q:FileNotFoundError: [Errno 2] No such file or directory が出た
A:CSVファイルのパス(保存場所)が間違っています。コードの中の "名簿.csv" の部分を、実際のファイルパスに書き換えてください。Colabでは /content/名簿.csv が基本パスです。

Q:UnicodeDecodeError が出た
A:CSVの文字コードが合っていません。encoding="utf-8-sig"encoding="shift_jis" に変えて試してください。

Q:ModuleNotFoundError: No module named 'pandas' が出た
A:Colabのセルの先頭に !pip install pandas を追加して実行してください。

Q:ChatGPTは無料版でも使えますか?
A:はい。GPT-4o mini(無料版)でもコード生成・修正には十分対応できます。有料版は不要です。

Q:会社のPCでこのツールを使っていいですか?
A:社内のIT・情報セキュリティポリシーを確認してください。業務データをGoogle Colabに読み込む場合は、個人Googleアカウントではなく会社のGoogle Workspaceアカウントを使うことを推奨します。

次に作るべきツールのアイデア一覧

総務業務でPythonが活躍できる場面をまとめました。前記事で詳しい手順を解説しています。

📊 データ整理
CSVのデータクレンジング方法|Excel操作手順とPythonコード
Pythonで重複チェックを自動化する方法|業務シーン別コード5選

📄 書類管理
紙書類のデジタル化手順|総務担当が一人で進める全ステップ
書類をデータ化するOCRの方法|スキャナーなし・無料でできる手順

🗂️ ファイル管理
ファイル名を一括変更する方法5選|失敗時の戻し方付き
フォルダ整理を自動化する方法4選|ルール設計から設定手順まで

✉️ 通知・メール自動化
定型メールを自動化する方法|Gmail・Outlook別に総務担当が解説
社内通知を自動化するツール5選

🔧 全体ワークフロー
データ整理を効率化するツールと仕組み化の手順
総務初心者がPythonを始める方法|今週末に動かして来週月曜から使えるようになる手順

まとめ

  • 総務担当のツール自作は「ChatGPT×Google Colab」で今週末に完成する
  • コードを書く必要はない。ChatGPTに仕様を伝えて貼り付けるだけ
  • 3本の完成コード(重複チェック・勤怠集計・備品確認メール)は書き換えポイントだけ変えれば自社で動く
  • エラーが出たらエラー文をそのままChatGPTに貼れば解決する
  • Windowsタスクスケジューラで月次・週次の定期実行まで設定できる

CV導線

まずGoogle Colabを開いて、ツール1(重複チェッカー)のコードを貼り付けてみてください。自社の名簿CSVで動いた瞬間、「自作できた」という実感が得られます。

Google Colab(無料)を開く

Pythonをもっと体系的に学んで、さらに複雑なツールを作りたくなった方へ。業務自動化に特化したPython講座もあります。ただし動かす体験を先に積んでください。体験なしでの学習は途中で止まりやすいです。

コメント