PORTFOLIO
CSV・Excel・Googleスプレッドシートにある繰り返し業務を、「整形・集計・レポート・通知」まで一つの流れに自動化します。Python・Google Apps Scriptを使い、まず対象データで動く最小版を確認してから仕上げます。
「毎週、貼り付けた表を直して集計し、グラフを作って連絡する」といった定型作業を、入力から通知まで自動で回る形にします。
最初にサンプルデータで、整形ルールと出力イメージを確認します。公開制作例では、20行の架空売上データから3週分の集計・グラフ・通知を生成しています。
定期的に確認が必要な情報を収集し、前回との差分だけを抽出。AIが状況を短く整理し、人が確認できる形で通知します。
複数の公開情報を毎日確認し、前日から何が変わったかを担当者が手作業で比較する運用です。確認に時間がかかるだけでなく、重要な変更を見落としたり、変化がない日に不要な判断コストが発生したりします。
収集対象と通知先は案件ごとに差し替え可能です。規約に反する取得は扱わず、AIの出力だけで外部操作を実行しない、人の確認を残す設計です。
技術: Python / 構造化データ / 生成AI / スケジューラ / 通知Webhook。掲載内容は匿名化・架空化しており、実在の顧客情報・運用設定・ソースコードは公開していません。
受信した問い合わせを AI が分類・要約し、返信文の下書きまで用意。台帳に記録し、緊急案件だけ通知します。
1日数十件の問い合わせを、担当者が全文を読んで「不具合/料金/解約…」に仕分けし、Excelに手で転記。緊急案件の見落としが起き、返信も毎回ゼロから書いていた。
分類の値は構造化出力で固定。通知先は Webhook を抽象化し Slack / Teams / LINE に差し替え可能。自動送信はせず、担当者が下書きを確認して送る運用。
| # | カテゴリ | 緊急度 | 要約 |
|---|---|---|---|
| 1 | 不具合 | 高 | 管理画面にログインできず「認証に失敗しました」と表示される |
| 4 | 解約 | 中 | 他社乗り換えに伴う解約手続きとデータエクスポート方法 |
| 6 | 不具合 | 高 | iPhoneアプリで打刻時に毎回強制終了する |
| 9 | クレーム | 高 | 先週の不具合報告に返信がなく対応の遅さを指摘 |
| 10 | 機能要望 | 低 | 有給休暇の申請・承認機能の追加要望 |
緊急対応が必要な3件を自動検出。あわせて生成された返信下書きの例(#9 クレーム):
技術: Python / Anthropic API(Claude)/ openpyxl。データはすべて架空。
表記ゆれだらけの貼り付けデータを自動で整形し、週次で集計してグラフ付きレポートを生成、チャット通知します。
日次売上が担当者ごとにバラバラの形式でシートに貼られる(日付が 2026/6/1 6月2日 と混在、金額に全角数字 12000、商品名に前後の空白)。これを手で直し、週ごとに合計してグラフを作る作業が毎週発生していた。
| 週 | 勤怠 | 経費 | 給与 | 合計 |
|---|---|---|---|---|
| 06-01週 | 65,000 | 11,000 | 24,000 | 100,000 |
| 06-08週 | 41,000 | 11,000 | 21,000 | 73,000 |
| 06-15週 | 48,000 | 8,000 | 25,000 | 81,000 |
合計売上 254,000 円。整形・集計ロジックは Google 非依存の純粋関数で、手元の Node でも検証可能。
技術: Google Apps Script / JavaScript。データはすべて架空。
店舗のLINE公式を、会員証/QR来店記録/ポイント・特典/FAQ・AI自動応答/未来店リマインド/週次集計まで回す小さなCRMに。GAS+スプレッドシートで動き、管理画面はスプレッドシートそのものです。
LINE公式は「友だちを集める」だけで来店や会員情報が残らず常連化につながらない。会員証・ポイントは別管理で手間、営業時間や料金の同じ質問に毎回スタッフが手で返信。最近来ていない常連にも気づけない。
| 会員 | ランク | 来店 | pt | 特典 |
|---|---|---|---|---|
| あやか | ブロンズ | 5 | 500 | 1 |
| けん | レギュラー | 2 | 200 | 0 |
| めい | レギュラー | 1 | 100 | 0 |
来店5回で特典を自動進呈。14日来店のない会員は自動でリマインド抽出。オーナーには週次レポート(新規3名/来店8回/付与800pt/特典1件)を自動配信。ロジックはGoogle非依存の純粋関数で、手元のNodeでも全機能を検証可能。
技術: Google Apps Script / JavaScript / LINE Messaging API。データはすべて架空。
登録・一覧・更新・削除(CRUD)に加え、CSV一括インポート/エクスポートと入出庫の変更ログを備えた小規模業務システムです。
在庫の増減をExcelで手入力すると、入力ミス・重複コードの見落とし・「いつ・なぜ数量が変わったか」の記録漏れが起きやすい。仕入先から届くCSVも毎回手でコピー&ペーストして転記している。
バリデーション(コード重複・数量マイナス化・型チェック)は登録・更新の全経路で共通の関数を通すため、CLIから入れてもCSVから入れても同じルールが効きます。
| code | name | quantity | unitPrice | status |
|---|---|---|---|---|
| SKU-001 | ノートPC 14インチ | 7 | 68,000 | 在庫僅少 |
| SKU-003 | USB-Cハブ | 45 | 3,200 | 適正 |
| SKU-004 | モバイルディスプレイ | 8 | 15,800 | 在庫僅少 |
CSVインポートは1件追加・1件を重複でスキップ。増減はすべて入出庫ログに自動記録されます。
技術: Node.js(外部npm依存なし)。同じCRUD+CSVの構成は勤怠管理・受発注・会員管理のような Access/kintone 代替の小規模システムに転用可能。データはすべて架空。
ページに [wpfs_form] ショートコードを置くだけで申込フォームを追加。送信内容は管理画面の一覧表示とCSVエクスポートまで一式で確認できます。
問い合わせや申込みをメール・外部フォームサービス任せにしていると、WordPress側の管理画面から一覧・検索・CSV出力ができない。既存プラグインは多機能すぎる、または一覧・CSV出力までは対応していないなど、要件とちょうど合わないことが多い。
バリデーションとCSV生成はWordPress関数に依存しない純粋関数として切り出しており、WP環境なしでも単体テストできます。
| 日時 | お名前 | メール | 内容 |
|---|---|---|---|
| 2026-07-30 10:12 | ひろき | hiroki@example.jp | 体験レッスンの空き状況について… |
| 2026-07-29 18:40 | かな | kana@example.jp | 資料請求をお願いします… |
| 2026-07-28 09:03 | たくや | takuya@example.jp | 料金プランの違いについて… |
必須項目未入力・メール形式不正での送信は保存されず、元のフォームにエラー表示。管理画面「CSVエクスポート」はBOM付きUTF-8でダウンロードされます。
技術: PHP(WordPressプラグイン)。外部ライブラリ依存なし。データはすべて架空。
同じ「収集・整形・判定・通知」の考え方で、次のような自動化も構築できます。
複数サイトを定期巡回して変更点を抽出し、AIが要約して通知。競合・在庫・価格の監視などに。
LINE公式の会員証・来店記録・自動応答(制作例④)のほか、Telegram等から作業をワンタップ承認できる運用ツールも。
元データを整形して、記入済みのPDF帳票やレポートを自動生成。定型書類の作成をなくす。
小さく動かして確認しながら、着実に仕上げます。