ご訪問ありがとうございます。
Googleシートマスターのひろしです。
前回
スプレッドシートからGoogleカレンダーに予定を登録する方法(GAS)
今回は、とっても価値の高い方法をお伝えします。
これを知ることであなたは、
- GスプレッドシートからGoogleカレンダーに予定を登録時にゲストを指定することができます。
- 追加したゲストにメールを送ることができます。
なので、サクッとマスターして
と答えてあげてください。
動画はこちら
シートはこちら
スクリプト
//ゲスト付きでGoogleカレンダーに登録
function RegistEventAddGuestFromSp() {
const sheet = SpreadsheetApp.getActiveSheet();
const Calendar = CalendarApp.getDefaultCalendar();
let event //作成されたイベント
let title, body, mailadder
console.log(sheet.getLastRow())
for (let i = 2; i <= sheet.getLastRow(); i++) {
title = sheet.getRange(i, 1).getValue()
body = sheet.getRange(i, 3).getValue()
event = Calendar.createAllDayEvent(
title, //タイトル
sheet.getRange(i, 2).getValue(), //予定日
{
description: body,//説明
location: sheet.getRange(i, 4).getValue() //場所
}
)
mailadder = sheet.getRange(i, 5).getValue() //ゲストのメールアドレス
console.log("ゲストは", mailadder)
event.addGuest(mailadder)
MailApp.sendEmail(mailadder,
title,
"以下の予定を追加しました。\n\n" +
body)
}
}
※複数のメールアドレスおよびメールアドレスがない場合には、対応していません。
ポイント
ゲストの追加は、イベント作成の戻り値に対して
addGuest()すればOKです。
createAllDayEvent(title, date, options)
新しい終日の予定を作成します。
戻り値
CalendarEvent
– 作成されたイベント。
addGuest(email)
例)
let event = Calendar.createAllDayEvent()
event.addGuest()
メールの送信方法
【初めてのGAS 5.】わずか1分でいきなりメールが送れる方法(Gスプレッドシート)
以下のようにやればOKです。
MailApp.sendEmail(メールアドレス,題名,本文)
例)
MailApp.sendEmail("xxxxx@gmail.com","予定のお知らせ","予定を追加しました")
なお、メール本文は、スプレッドシートから読み込んだほうが
楽です。
以上です。
ただ、今回のスクリプトでは、複数のゲストに対応していません。
次回は、複数のゲストに対応します。
最後までご覧いただきありがとうございます。
複数のゲスト対応はこちら
【GAS】カンマ区切りの文字列を分割して処理する方法(Gスプレッドシート)