Google apps script 初学者问题:忽略Google应用程序脚本函数中的空单元格

Google apps script 初学者问题:忽略Google应用程序脚本函数中的空单元格,google-apps-script,spreadsheet,ignore,Google Apps Script,Spreadsheet,Ignore,我编写此函数是为了将电子表格条目带入日历。如您所见,现在我接受范围B5:B30中的所有条目。如果我没有填写这个范围内的所有单元格,我会得到一个错误,因为我的参数是错误的 现在,如果我能够只从这个范围中获取不为空的值,我想所有这些都会起作用。有没有办法从我的范围中删除空单元格,或者只执行getValue()并在有值的情况下将其保存在我的注册定义中 function scheduleShifts() { var spreadsheet = SpreadsheetApp.getActiveSheet(

我编写此函数是为了将电子表格条目带入日历。如您所见,现在我接受范围B5:B30中的所有条目。如果我没有填写这个范围内的所有单元格,我会得到一个错误,因为我的参数是错误的

现在,如果我能够只从这个范围中获取不为空的值,我想所有这些都会起作用。有没有办法从我的范围中删除空单元格,或者只执行getValue()并在有值的情况下将其保存在我的注册定义中

function scheduleShifts() {
var spreadsheet = SpreadsheetApp.getActiveSheet();
var calendarID = spreadsheet.getRange("C3").getValue();
var eventCal = CalendarApp.getCalendarById(calendarID);
var lr = spreadsheet.getLastRow()

var signups = spreadsheet.getRange("B5:D30").getValues()

for (x=0; x<signups.length;x++)
{
var shift = signups[x];
var startTime = shift[0];
var endTime = shift[1];
var volunteer= shift[2];
eventCal.createEvent(volunteer, startTime, endTime);
}
}
函数调度移位(){
var电子表格=SpreadsheetApp.getActiveSheet();
var calendarID=spreadsheet.getRange(“C3”).getValue();
var eventCal=CalendarApp.getCalendarById(calendarID);
var lr=spreadsheet.getLastRow()
var signups=spreadsheet.getRange(“B5:D30”).getValues()
对于(x=0;x试试这个:

  if (volunteer && startTime && endTime) {
    eventCal.createEvent(volunteer, startTime, endTime);
  }
学习谷歌应用程序脚本的一些最佳资源包括、代码库、和。

谢谢!这很有效:

function scheduleShifts() {
var spreadsheet = SpreadsheetApp.getActiveSheet();
var calendarID = spreadsheet.getRange("C3").getValue();
var eventCal = CalendarApp.getCalendarById(calendarID);
var lr = spreadsheet.getLastRow()

var signups = spreadsheet.getRange("B5:D30").getValues()

for (x=0; x<signups.length;x++)
{
var shift = signups[x];
var startTime = shift[0];
var endTime = shift[1];
var volunteer= shift[2];
if (volunteer && startTime && endTime){
eventCal.createEvent(volunteer, startTime, endTime);
}
}}
函数调度移位(){
var电子表格=SpreadsheetApp.getActiveSheet();
var calendarID=spreadsheet.getRange(“C3”).getValue();
var eventCal=CalendarApp.getCalendarById(calendarID);
var lr=spreadsheet.getLastRow()
var signups=spreadsheet.getRange(“B5:D30”).getValues()
对于(x=0;x