【中小企業向け】Googleフォームの有給申請をGoogleカレンダーに自動転記する方法

自動化・GAS

中小企業では、いまだに紙やファックスでの有給申請が行われているケースが少なくありません。

  • 承認フローが不透明
  • 集計や転記が手作業でミスが発生しやすい
  • 誰がいつ休むのか管理者しか把握できず、共有が遅れる

その結果、ダブルブッキングやシフト調整の遅れが起こり、現場の効率を下げてしまいます。


解決方法

これらの課題は、Googleフォーム × スプレッドシート × Googleカレンダー を組み合わせることで解決できます。

  1. 有給申請をGoogleフォームで受け付ける
  2. 回答をスプレッドシートに自動集計
  3. スプレッドシートの内容をGoogleカレンダーに転記

この仕組みにより、申請内容がリアルタイムでカレンダーに反映され、誰でもすぐに休暇予定を確認できます。
シフト調整や業務分担もスムーズになり、業務効率が大幅に改善します。


手順

  • step1
  • step2
    スプレッドシートでデータを整える
    • フォームの回答が保存されるシートを確認
    • 氏名・開始日・終了日 の列番号をメモしておく
  • step3
    Google Apps Script(GAS)を設定する

    スプレッドシートの 拡張機能 → Apps Script を開き、以下のコードを貼り付けます。

    function addToCalendar() {
      // ① スプレッドシートのシート名を変更
      const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("フォームの回答1");
    
      // ② 最終行(直近の申請データ)を取得
      const lastRow = sheet.getLastRow();
      const rowData = sheet.getRange(lastRow, 1, 1, sheet.getLastColumn()).getValues()[0];
    
      // ③ 列番号を自分のフォームに合わせて変更
      //   例:氏名がB列なら [1]、開始日がC列なら [2]、終了日がD列なら [3]
      const name = rowData[1]; // 氏名
      const startDate = new Date(rowData[2]); // 開始日
      const endDate = new Date(rowData[3]);   // 終了日
    
      // ④ カレンダーIDを自分のものに変更
      // 「Googleカレンダー → 設定 → カレンダーの統合 → カレンダーID」で確認
      const calendar = CalendarApp.getCalendarById("あなたのカレンダーID");
    
      // ⑤ イベントのタイトルを自由にカスタマイズ可能
      calendar.createEvent(name + " 有給休暇", startDate, endDate);
    }
    
  • step4
    カレンダーIDを取得して貼り付ける
    • Googleカレンダー → 設定 → 「カレンダーの統合」からカレンダーIDをコピー
    • 上記コードの あなたのカレンダーID に貼り付け
  • step5
    タイトル
    • Apps Script画面 → 「トリガー」を開く
    • 関数に addToCalendar を選択
    • イベントの発火条件を「フォーム送信後」に設定
    • これで申請があれば自動的にカレンダーへ反映!
  • step6
    トリガーを設定する
    • Apps Script画面 → 「トリガー」を開く
    • 関数に addToCalendar を選択
    • イベントの発火条件を「フォーム送信後」に設定
    • これで申請があれば自動的にカレンダーへ反映!

まとめ

Googleフォームとスプレッドシート、そしてGoogleカレンダーを組み合わせることで、有給申請からスケジュール共有まで完全デジタル化できます。

  • 紙やFAXの手間を削減
  • 集計や転記のミスを防止
  • 休暇予定がリアルタイムに共有され、シフト調整もスムーズ

👉 次は「残り有給日数を自動計算し、通知する仕組み」を紹介しています。
(リンク:「Googleスプレッドシートで有給残日数を自動計算&通知する方法」)