【GAS】スプレッドシートに入力した予定をGoogleカレンダーに追加する スプレッドシートに入力した予定をGoogleカレンダーに追加するためのスクリプトをWEBで検索して得たものを加工して以下のように作りました。 実行すると、エラーが表示されます・・・が、予定自体は命令通りに追加されます。 使えないわけではないのでこのまま使用していたのですが、やはりエラーがでることが気持ち悪いので質問させていただきます。 function calendar() { var sht, ID, i, eventday, eventname, description, location, start, end, added, color; sht = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("予定表"); ID = sht.getRange(1,10).getValue(); for(i = 2; i <= sht.getLastRow(); i++) { eventday = sht.getRange(i, 1).getValue(); var b = Utilities.formatDate(eventday,"JST","yyyy/MM/dd"); eventname = sht.getRange(i,2).getValue(); var starttime = sht.getRange(i,3).getValue(); var H = starttime.getHours();//starttimeの時間を取得してHへ格納 var M = starttime.getMinutes();//starttimeの時間を取得してMへ格納 var S = starttime.getSeconds();//starttimeの時間を取得してSへ格納 var start = new Date(b+" "+H+":"+M+":"+S); var endtime = sht.getRange(i,4).getValue(); var H1 = endtime.getHours();//endtimeの時間を取得してH1へ格納 var M1 = endtime.getMinutes();//endtimeの分を取得してM1へ格納 var S1 = endtime.getSeconds();//endtimeの秒を取得してS1へ格納 var end = new Date(b+" "+H1+":"+M1+":"+S1); guests = sht.getRange(i,5).getValue(); description = sht.getRange(i,6).getValue(); location = sht.getRange(i,7).getValue(); const options = { guests,description,location }; color = sht.getRange(i,12).getValue(); added = sht.getRange(i,9).getValue(); if(added == "") { Cal = CalendarApp.getCalendarById(ID); let event = Cal.createEvent(eventname,start,end,options) event.setColor(color); sht.getRange(i,9).setValue("登録完了"); } } } 実行後表示されるエラー 「Exception: パラメータ(String,String,String)が Utilities.formatDate のメソッドのシグネチャと一致しません。」 実行ログより 「Exception: The parameters (String,String,String) don't match the method signature for Utilities.formatDate.」 どうも、上記スクリプトの var b = Utilities.formatDate(eventday,"JST","yyyy/MM/dd"); に問題があるようなのですが。 ご教授くださいますようお願いします。
JavaScript