目次
Contents
承認作業、こんな状態になっていませんか?
- 申請はフォームで集めている
- でも承認はメール・口頭・チャット
- 誰がOKしたか分からない
- 差し戻し理由が残らない
この状態は、「集めるだけ自動化」で止まっています。
考え方:フォームは「入口」、承認は「流れ」で作る
承認フロー自動化のポイントは、
すべてを完結させようとしないことです。
- 判断は人が行う
- 通知・記録・分岐を自動化する
「一次対応まで」をGASに任せるのが現実的です。
全体の仕組み
- Googleフォームで申請を送信
- GASが内容を取得
- 承認者へ自動通知(メール or LINE)
- 承認/差し戻しをクリックで選択
- 結果を記録・申請者へ通知
① フォームとスプレッドシートの構成
フォーム回答は、次のような列構成がおすすめです。
申請日 | 氏名 | 内容 | 承認状態 | 承認者 | コメント
承認状態は最初「未確認」にしておきます。
② フォーム送信時に承認依頼を送る
フォーム送信トリガーを使い、承認者に通知します。
function onFormSubmit(e) {
const sheet = SpreadsheetApp.getActiveSheet();
const row = sheet.getLastRow();
sheet.getRange(row, 4).setValue('未確認');
sendApprovalMail(row);
}
③ 承認メールに「判断リンク」を入れる
承認者はメール内のリンクをクリックするだけです。
承認しますか?
[ 承認する ]
[ 差し戻す ]
それぞれのリンクに、
行番号+承認結果を含めます。
④ 承認・差し戻しを処理するGAS
function approve(e) {
const row = e.parameter.row;
const result = e.parameter.result;
const sheet = SpreadsheetApp.getActiveSheet();
sheet.getRange(row, 4).setValue(result);
}
これで、
- 誰が
- いつ
- どの判断をしたか
が自動で残ります。
⑤ 承認後の自動処理
OKの場合
- 申請者に承認完了メール送信
- PDF(申込書・申請書)を正式保存
差し戻しの場合
- コメント付きで申請者へ通知
- 再申請を促す
ここまで来ると、紙・口頭・確認漏れが消えます。
よくある失敗と注意点
承認リンクが第三者に使われる
→ 社内限定・アカウント制限を必ず設定
判断が増えすぎる
→ OK / NG の2択から始める
全部自動化しようとする
→ 最終判断は人が行う前提にする
この記事の位置づけ(シリーズ)
- ① ChatGPTで文章生成
- ② 週報・月報自動化
- ③ メール・LINE送信
- ④ PDF自動作成
- ⑤ 承認フロー自動化(この記事)
この⑤で、
「業務として回る仕組み」が完成します。
まとめ|承認は「仕組み化」すると一気に楽になる
- 判断は人
- 通知・記録・分岐は自動
- GASで十分に実現可能
まずは簡単な申請から、
小さく自動化するのがおすすめです。
