0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

GoogleAppsScriptで勤怠メールをボタン1クリックで送れるようにする

Posted at

前提条件

  • Google Workspace(旧 G Suite)を使用している。
  • リモートワーク等で勤怠をメールで送信する習慣がある。
  • 勤怠開始します、終了しますといった文面に日々の変化がないこと。

仕様

  • GoogleSpreadSheet 上にボタンを描写する
  • クリックすると送信前確認モーダルが開く
  • YESを押すとメールが送信され、されたことがわかるモーダルが開く
  • Noを押すとキャンセルされたことがわかるモーダルが開く

作業手順

GoogleSpreadSheet

スプレッドシートの挿入メニューの図形描写を選択肢し送信ボタンを作成する。
スクリーンショット 2023-02-15 19.57.43.png

AppsScript

スプレッドシートの拡張機能メニューの「Apps Script」を選択すると
別タブでAppsScriptが開く
※ スプレッドシートから開かないと疎通しないので注意

スクリーンショット 2023-02-15 20.01.58.png

  • サンプルコードは以下
勤怠開始メール送信.gs
function sendStartMail(){
    const confrim = Browser.msgBox(
        "勤怠開始メール 送信", // モーダルのタイトル
        "メールを送信してもよろしいですか?", // モーダルの詳細
        Browser.Buttons.YES_NO // はい、いいえのボタンを表示
    )
    
    if(confirm === 'yes'){
        // メールを送信するスクリプト
        const address = '送信したいメールアドレス';
        const subject = '〇〇:勤怠開始します';
        let body = 'お疲れ様です。〇〇です。これより勤怠開始します。';
        const options = {};

        GmailApp.sendEmail(address,subject,body,options);

        // 送信完了を知らせるモーダルを表示
        Browser.msgBox(
            "送信完了",
            "スクリプトを実行しました。",
            Browser.Buttons.YES 
        )
    }
 
    if(confirm === 'no'){
        // 送信キャンセルを知らせるモーダルを表示
        Browser.msgBox(
            "送信キャンセル",
            "スクリプトをキャンセルしました。送信は行われていません。",
            Browser.Buttons.YES 
        )
    }
}

※ 勤怠終了メールも作成する場合は新しく関数を作成

GoogleSpreadSheet

作成した送信ボタンを右クリックし、スクリプトの割り当て を選択
スクリーンショット 2023-02-15 19.58.40.png

gsファイルの中で定義した関数名(sendStartMail)を設定。
スクリーンショット 2023-02-15 20.11.57.png

以上、スプレッドシート上のボタンを押すことで、
メール送信が行えるようになった。
スクリーンショット 2023-02-15 20.10.55.png

応用例

  • 現在日時を取得し GoogleSpreadSheet に実行した直近の日時をログとして特定のシート、セルに自動反映する
  • GoogleSpreadSheet上の特定のシート、セルから文字列を取得しスクリプトに反映。メールアドレスや名前、部署などをuniqueに変更する。

Appendix

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?