【GAS】Google Apps Script活用事例 自分が出席しないカレンダーの予定をグレーに変更するスクリプト
採用関連のお仕事をしていると、HRMOSなどをはじめとするATS連携などで自分が出席しない面接予定などがカレンダーを占有するようになってきます。
自分が出席しなければいけない会議と色分けを自動でやってくれたら便利だよなーと思って書きました。
/**
*
* 自分が出欠しない予定をカレンダーの色をグレーに変える
*
*
*/
function setColorEvents() {
const mailAddress = Session.getActiveUser().getEmail();
console.log(`対象のメールアドレス:${mailAddress}`);
const today = new Date();
const targetDate = new Date();
targetDate.setDate(targetDate.getDate() + 1);
// 7日後までの予定
const calendar = CalendarApp.getDefaultCalendar();
const events = calendar.getEvents(today, targetDate);
events.forEach((event) => {
const guestList = event.getGuestList(true);
const isMyEmailIncluded = isMyEmailIncluded_(guestList, mailAddress);
console.log(`予定名:${event.getTitle()}`);
console.log(`出席者に自分の名前が含まれているか:${isMyEmailIncluded}`);
if (!isMyEmailIncluded) {
console.warn(`一致しないため、色を変更します`);
event.setColor(CalendarApp.EventColor.GRAY);
}
});
}
/**
*
* 自分のアドレスが含まれているかどうかを確認する
*
*/
function isMyEmailIncluded_(guestList, myEmail) {
for (let guest of guestList) {
if (guest.getEmail() === myEmail) {
return true;
}
}
// ループが終わっても一致しなかったら、falseを返す
return false;
}
この記事が気に入ったらサポートをしてみませんか?