ご訪問ありがとうございます。
Googleシートマスターのひろしです。
前回
【GAS】指定したGoogleカレンダーの予定をLINEに送信する方法
指定したカレンダーの予定のみLINEに通知されるようになります。
以前作成したスクリプトの変更方法がわかります。
今回は、とっても価値の高い方法をお伝えします。
これを知ることであなたは、
- GASで明日の予定を取得する方法がわかります。
- 今日の予定をLINEに送信するスクリプトの変更方法がわかります。
なので、サクッとマスターして
と答えてあげてください。
ご質問
というわけで
・明日の予定を取得
・予定がある場合のみ送信
への変更方法をご説明します。
動画はこちら
シートはこちら
*クリックすることでシートが開きます。(コピーしてお使いください)
function calendarToLineX() {
var calendars = CalendarApp.getAllCalendars();
let newdate = new Date() //今日の取得
newdate.setDate(newdate.getDate() + 1) //明日を取得しセット
var text = "\n" + Utilities.formatDate(newdate, 'JST', 'M月d日') + "\n";
for (i in calendars) {
var calendar = calendars[i];
var events = calendar.getEventsForDay(newdate);
//カレンダーの内容を取得する
for (j in events) {
var event = events[j];
var title = event.getTitle();
var start = toTime(event.getStartTime());
var end = toTime(event.getEndTime());
text += start + ' - ' + end + " " + title + '\n';
}
if (events.length > 0) { //予定がある場合
text += "\n";
console.log(text) //LINEにデータを送信する
// sendToLine(text);//LINEにデータを送信する
}
}
}
ポイント
- 明日の取得
let newdate = new Date() //今日の取得
newdate.setDate(newdate.getDate() + 1) //明日を取得しセット
- 予定がある場合の判別
if (events.length > 0) { //予定がある場合
text += "\n";
console.log(text) //LINEにデータを送信する
// sendToLine(text);//LINEにデータを送信する
}
events.length が0より大きければ、予定がある場合なので
その場合のみ、LINEにデータを送信すればOKです。
最後までご覧いただきありがとうございます。
つぎはこちら
【GAS】GoogleスプレッドシートからLINEにメッセージを送る方法(トークルームの作成、LINE Notify APIの登録)