前提・実現したいこと
Googleカレンダーの終日イベント以外の全てのイベントをスプレッドシートに取り込みたいです。
発生している問題・エラーメッセージ
同一のイベントが複数回取り込まれます。
該当のソースコード
GAS
1function myFunction() { 2 3 var calender = CalendarApp.getCalendarById('***@gmail.com'); 4 5 var starttime = new Date(); 6 starttime.setHours(0); 7 starttime.setMinutes(0); 8 starttime.setSeconds(0); 9 10 var endtime = new Date(); 11 endtime.setHours(23); 12 endtime.setMinutes(59); 13 endtime.setSeconds(59); 14 15 var events = calender.getEvents(starttime,endtime); 16 var values = []; 17 18events.forEach(function(event){ 19var title = event.getTitle(); 20var start = event.getStartTime(); 21var allday = event.isAllDayEvent(); 22if(allday !== true){ 23 24var description = event.getDescription(); 25values.push([title,start,description]); 26 27var ss = SpreadsheetApp.getActiveSpreadsheet(); 28var sheet = ss.getSheetByName("シート1") 29var lastRow = sheet.getLastRow()+1; 30sheet.getRange(lastRow,1,values.length,values[0].length).setValues(values); 31} 32} 33) 34} 35
試したこと
if文をなくすと複数回取り込まれないようです。
もしif文を使わずに終日イベント以外を全て取り込む方法があれば、そちらでも構いません。
よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/03/16 02:08