GASで始める!中小企業向け夏季業務効率化:Gmail操作による休暇連絡自動化
中小企業における夏季休暇中の業務効率化は、従業員の満足度向上と事業継続の両立に不可欠です。本記事では、Google Apps Script(GAS)を活用し、Gmail操作による休暇連絡自動化システムを構築する方法を、中級者向けに解説します。夏季休暇期間中の不在連絡設定を自動化し、顧客や取引先への対応遅延を防ぐとともに、従業員の休暇取得をスムーズに支援します。
休暇連絡自動化システムの概要
本システムは、夏季休暇期間中に受信したGmailに対して、自動的に休暇中である旨を返信するものです。具体的には、以下の機能を実現します。
- 休暇期間の設定:スプレッドシート上で休暇期間を設定します。
- 自動返信設定:休暇期間中に受信したメールに対して、指定した自動返信メッセージを送信します。
- 除外設定:特定のメールアドレス(例:社内からのメール)に対しては自動返信を行いません。
- ログ記録:自動返信の履歴をスプレッドシートに記録します。
GASによる実装手順
以下に、GASによる実装手順をステップごとに解説します。スプレッドシートの作成からスクリプトの記述、トリガーの設定まで、具体的なコード例を交えながら説明します。
1. スプレッドシートの作成
まず、Googleスプレッドシートを作成し、以下の項目を設定します。
- シート名:「休暇設定」
- 項目:開始日、終了日、自動返信メッセージ、除外メールアドレス
例:
項目 | 内容 |
---|---|
開始日 | 2024/07/01 |
終了日 | 2024/08/31 |
自動返信メッセージ | ただいま夏季休暇をいただいております。〇月〇日より順次対応いたします。 |
除外メールアドレス | example@example.com |
2. GASスクリプトの記述
スプレッドシートに紐づいたGASスクリプトエディタを開き、以下のコードを記述します。
// スプレッドシートから設定情報を取得する関数
function getSettings() {
const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheetByName("休暇設定");
const settings = {};
settings.startDate = new Date(sheet.getRange("B2").getValue());
settings.endDate = new Date(sheet.getRange("B3").getValue());
settings.message = sheet.getRange("B4").getValue();
settings.excludeAddress = sheet.getRange("B5").getValue();
return settings;
}
// Gmailの自動返信を行う関数
function autoReply() {
const settings = getSettings();
const now = new Date();
// 休暇期間外の場合は処理を終了
if (now < settings.startDate || now > settings.endDate) {
return;
}
const threads = GmailApp.search('is:inbox is:unread');
threads.forEach(thread => {
const messages = thread.getMessages();
const firstMessage = messages[0];
const sender = firstMessage.getFrom();
// 除外アドレスの場合は処理をスキップ
if (sender === settings.excludeAddress) {
return;
}
// 自動返信を送信
thread.reply(settings.message);
thread.markRead();
// ログを記録
logReply(sender, firstMessage.getSubject());
});
}
// 自動返信のログを記録する関数
function logReply(sender, subject) {
const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheetByName("ログ");
sheet.appendRow([new Date(), sender, subject]);
}
3. トリガーの設定
GASのトリガーを設定し、autoReply
関数を定期的に実行するようにします。
- トリガーの種類:時間主導型
- 実行時間:1分おき
応用例と活用シーン
本システムは、夏季休暇だけでなく、年末年始休暇や長期出張時など、様々なシーンで活用できます。また、自動返信メッセージの内容を動的に変更することで、よりパーソナライズされた対応も可能です。例えば、顧客の種類に応じて異なるメッセージを送信したり、問い合わせ内容に応じてFAQへのリンクを送信したりすることができます。
まとめ
GASを活用したGmail操作による休暇連絡自動化システムは、中小企業における夏季業務効率化に大きく貢献します。従業員の休暇取得を支援し、顧客や取引先への対応遅延を防ぐとともに、企業の信頼性向上にもつながります。ぜひ本記事を参考に、自社のニーズに合わせた自動化システムを構築してみてください。