一から作ると面倒な日報メール――GASで実現する半自動化術とは:働く価値を上げる“VBA/GAS”術(12)(1/3 ページ)
毎日のように同じようなフォーマットで、一からメールを作成するのは、面倒くさい作業です。今回は、スプレッドシートとGASを活用した日報メールの作成術を紹介します。
Excel VBAとGAS
業務で発生するちょっとした面倒くさい業務。特定の操作を繰り返すだけなので、今のままでもいいけど、楽になったらいいなと思うこともあるのではないでしょうか。例えば業務を自動化すると時間が空くため、他の業務に時間を充てたり、残業時間を減らしたりできるかもしれません。
本連載「働く価値を上げる“VBA/GAS術”」では、業務を効率化する手段として「Microsoft Excel」(マイクロソフトエクセル)で使える「VBA」(Visual Basic for Applications)と「G Suite」の「GAS」(Google Apps Script)の使い方を説明し、よくある業務課題の解決策を紹介します。
GASで日報メールの自動作成および送信ツールを作る
第11回では、Excel VBAでMicrosoft Outlook(以下、Outlook)を操作して、Excelシートの内容を基に、日報メールの下書きを自動で作成するマクロの作り方を紹介しました。
今回は、そのGAS版です。GASはGmailを操作できるので、スプレッドシートと連携させて、下書きメールを作成するスクリプトを作成します。
なお、これまで連載で紹介したステートメントは詳しく紹介しませんので、以下の記事を参照ください。
連載「働く価値を上げる“VBA/GAS術”」のGASに関する記事
日報メールの元データとなるスプレッドシート
まず、日報メールで必要となる情報を入力するスプレッドシートを用意します。
1つ目のシートが「フォーマット」シートです。メールの下書きを作成する際に使用する、送信先アドレス、件名、宛名、本文の書き出しや締めの文章を記載します。
B3セルの「件名」およびB4セルの「書き出し」欄には、送信者の名前や現在の日付が挿入されるように、以下のスプレッドシート関数が入っています。
="日報 [" & B1 & "] : " & TEXT(TODAY(), "yyyy/mm/dd(ddd)")
=TEXT(TODAY(), "yyyy/mm/dd(ddd)") & "分、" & B1 & "の日報をお送りします。"
もう一つのシートが「レポート」シートです。
日報の本文に、時間帯別の予定やその内容を記載すること想定して、それらの情報はレポートシートに表形式で入力します。
予定が完了した際に、都度このシートにその内容を書き込んでいきます。そして、日報の提出期限に間に合うように、時限式トリガーを自動実行させるような運用をイメージしています。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- 日報メールを半自動化!?――ExcelとVBAで作成するメール作成マクロとは
時間のかかる業務の代表「メール作成」。中には、定期的かつ毎回同じようなフォーマットで作成、送信するメールもあるのではないでしょうか。今回は、日報を例に、Excelに記入したことを基にメールを作成するVBAを紹介します。 - 6分の壁をどう乗り越える?――「配列」を使ったGASのデータ集約スクリプトとは
GASは「1実行当たり6分」までという制限がある。処理するデータが増えると途中でスクリプトが止まってしまう可能性がある。今回は、過去に作成した「バラバラのデータを1箇所に集約する」スクリプトの処理を高速化する秘訣を紹介する。 - コピー&ペーストの繰り返しから脱却! GASでバラバラのデータを1箇所に集約
1つ1つファイルを開いてコピー&ペースト。バラバラのデータを1箇所に集約することは非常に手間のかかる業務です。今回は、そのような業務を、GAS(Google Apps Script)を使って自動化する方法を紹介します。