如何根据其他变量设置变量

时间:2018-03-31 17:41:03

标签: javascript google-apps-script

我正在使用谷歌电子表格脚本。我跟踪我的调度。我创建了一个按钮,按下时使用您所在的行来创建日历事件。 我目前正在处理的问题是找出事件的类型和日期。 与我合作的3个栏目是:交付,整合,培训。都是日期。 我的第一个,如果我将日期分配给将用作事件开始日期/时间的变量。 第二个,如果我将任务类型分配给变量以追加到事件标题。

我目前的错误是:失踪;在陈述之前(第15行) - 这是我的第一个

     function AddEvent() {

  var ss = SpreadsheetApp.getActiveSheet();
  var row = ss.getActiveRange().getRow();
  var rec = ss.getRange(row,2,1,28).getValues();
  var loc = ss.getRange(row,5).getValue();
  var ttl = ss.getRange(row,2).getValue();
  var typ;
  var stt;
  var del=ss.getRange(row,10).getValue();
  var int=ss.getRange(row,11).getValue();
  var trn=ss.getRange(row,12).getValue();

    //determine what date to use, del-delivery, int-integration, trn-training
    If (isBlank(trn)=False) {stt=trn};
    Else If (isBlank(int)=False) {stt=int};
    Else {stt=del};

    //I will append my event title with this value to know the task type
    If (isBlank(trn)=False) {typ="Training: "};
    Else If (isBlank(int)=False) {typ="Integration: "};
    Else {typ="Delivery: "};

Logger.log(stt, typ);


}

2 个答案:

答案 0 :(得分:2)

简短回答

除了报告的错误消息外,脚本还有几个错误。请记住,Google Apps脚本基于JavaScript。

语法错误

而不是

  • df['new_column'] = df.groupby(['id'])['value'].max() 正确的语法为If
  • if正确的语法为Else
  • else正确的语法为Else If
  • else if正确的语法为False

比较

在Google Apps脚本/ JavaScript上,单个false用于为变量分配值或对象。使用=进行抽象相等比较,使用==进行严格的相等比较。

功能

在Google Apps脚本/ JavaScript上,没有默认的isBlank()函数。你必须申报。

答案 1 :(得分:-1)



function AddEvent() {
    
  var ss = SpreadsheetApp.getActiveSheet();
  var row = ss.getActiveRange().getRow();
  var rec = ss.getRange(row,2,1,28).getValues();
  var loc = ss.getRange(row,5).getValue();
  var ttl = ss.getRange(row,2).getValue();
  var typ;
  var stt;
  var del = ss.getRange(row,10).getValue();
  var delib = ss.getRange(row,10).isBlank();
  var int = ss.getRange(row,11).getValue();
  var intib = ss.getRange(row, 11).isBlank();
  var trn = ss.getRange(row,12).getValue();
  var trnib = ss.getRange(row, 12).isBlank();

    //determine what date to use, del-delivery, int-integration, trn-training
  if (trnib == false) {stt=trn;}
  else if (intib == false) {stt=int;}
  else if (delib == false) {stt=del;}
  else return (Browser.msgBox('No valid date was found'));
    
    //I will append my event title with this value to know the task type
  if (trnib == false) {typ='Training: ';}
  else if (intib == false) {typ='Integration: ';}
  else {typ='Delivery: ';}
  
  Logger.log(typ + stt);
   
}