Google apps script Google脚本未执行代码但未通知错误

Google apps script Google脚本未执行代码但未通知错误,google-apps-script,google-sheets,Google Apps Script,Google Sheets,如果我在C列(C3:C29)中选择“30天”,则B列中的相应金额将粘贴到A2中所选月份之后的月份列中,我正在尝试创建预算文档 如果A2中出现“一月”,而C3中选择了30天,则B3的值将复制到相应的2月列,即第3行。类似地,如果选择“90天”,C3:C29任何超过该数量的单元格将被3除,然后在接下来的三个月内分配 1月份30天和90天的输出图像。 这是谷歌脚本的代码 函数onEdit(e){ var cell=SpreadsheetApp.getActive().getActiveCell();

如果我在C列(C3:C29)中选择“30天”,则B列中的相应金额将粘贴到A2中所选月份之后的月份列中,我正在尝试创建预算文档

如果A2中出现“一月”,而C3中选择了30天,则B3的值将复制到相应的2月列,即第3行。类似地,如果选择“90天”,C3:C29任何超过该数量的单元格将被3除,然后在接下来的三个月内分配

1月份30天和90天的输出图像。

这是谷歌脚本的代码

函数onEdit(e){
var cell=SpreadsheetApp.getActive().getActiveCell();
var row=cell.getRow();
var col=cell.getColumn();
//如果col>A&&col2&&col<4&&row>2&&row<29){//C3:
//做点什么
var ss=e.range.getSheet();
var value1=sheet.getRange(2,1).getValue();
var value2=sheet.getRange(第2行).getValue();
如果(值1==“一月”){
如果(值2==“30天”){
ss.getRange(第5行)/“G”是第7列
.setValue((ss.getRange(第2行).getvalue());/“B”是第2列
}
如果(值2==“90天”){
ss.getRange(第5行)/“G”是第7列
.setValue((ss.getRange(第2行).getvalue())/3);/“B”是第2列
ss.getRange(第6行)/“G”是第7列
.setValue((ss.getRange(第2行).getvalue())/3);/“B”是第2列
ss.getRange(第7行)/“G”是第7列
.setValue((ss.getRange(第2行).getvalue())/3);/“B”是第2列
}
}
}
}
需要最终确定预算,如有任何快速帮助,将不胜感激。

有几个问题:
  • 在if语句中使用严格比较(“==”),因此值和类型必须相等。在本例中,您必须使用
    toString()
    或简单地使用(“==”)将
    col==3
    中的单元格值显式转换为字符串

  • 代码中的
    value1
    可能未定义,因为代码中未定义“sheets”

  • “getvalue”不是函数,
    getvalue()
    是函数

  • 假设“sheet”替换为“ss”,则
    value2
    仍将返回数字(金额),而不是“30天或90天”字符串

  • 如果您解决了所有这些问题,那么脚本将正常工作。此外,您可能会发现使用
    console.log()
    对调试问题很有用

    例子:
    函数onEdit(e){
    控制台日志(e);
    var cell=SpreadsheetApp.getActive().getActiveCell();
    控制台日志(单元);
    var row=cell.getRow();
    var col=cell.getColumn();
    如果(列==3&&row>2&&row<29){//C3:
    var ss=e.range.getSheet();
    var value1=ss.getRange(2,1).getValue().toString();
    var value2=ss.getRange(第3行).getValue().toString();
    如果(值1==“一月”){
    如果(值2==“30天”){
    ss.getRange(第5行)/“G”是第7列
    .setValue((ss.getRange(第2行).getValue());/“B”是第2列
    }
    否则如果(值2==“90天”){
    var value=ss.getRange(第2行).getValue()/3;
    ss.getRange(第5行)
    .setValue(值);
    ss.getRange(第6行)
    .setValue(值);
    ss.getRange(第7行)
    .setValue(值);
    }
    }
    }
    }
    
    功能OneEdit(e)
    {
    var sheet=SpreadsheetApp.getActiveSheet();
    var sName=sheet.getSheetName();
    //var row=range.getRow();
    //var col=range.getColumn();var range=SpreadsheetApp.getActiveSpreadsheet().getRange(“D3:D29”);
    var value1=sheet.getRange(29,2).getValue();//从“原始数据”中的B29获取值
    var value2=sheet.getRange(30,4).getValue();//从“原始数据”中的D30获取值
    var value3=sheet.getRange(30,5).getValue();
    var value4=sheet.getRange(30,6).getValue();
    var value5=sheet.getRange(30,7).getValue();
    var value6=sheet.getRange(30,8).getValue();
    var value7=sheet.getRange(30,9).getValue();
    var value8=sheet.getRange(30,10).getValue();
    var value9=sheet.getRange(30,11).getValue();
    var value10=sheet.getRange(30,12).getValue();
    var value11=sheet.getRange(30,13).getValue();
    var value12=sheet.getRange(30,14).getValue();
    var value13=sheet.getRange(30,15).getValue();
    如果(值2>值1)
    {
    表3.getRange(“D3:D29”).立根背景(“红色”);
    }
    其他的
    {
    表3.getRange(“D3:D29”)。背景(“紫色”);
    }
    如果(值3>值1)
    {
    表3.getRange(“E3:E29”).立根背景(“红色”);
    }
    其他的
    {
    表3.getRange(“E3:E29”)。背景(“紫色”);
    }
    如果(值4>值1)
    {
    表3.getRange(“F3:F29”).立根背景(“红色”);
    }
    其他的
    {
    表3.getRange(“F3:F29”).背景(“紫色”);
    }
    如果(值5>值1)
    {
    表3.getRange(“G3:G29”).立根背景(“红色”);
    }
    其他的
    {
    表3.getRange(“G3:G29”).退根(“紫色”);
    }
    如果(值6>值1)
    {
    表3.getRange(“H3:H29”).立根背景(“红色”);
    }
    其他的
    {
    表1.getRange(“H3:H29”)。背景(“紫色”);
    }
    如果(值7>值1)
    {
    表1.getRange(“I3:I29”).立根背景(“红色”);
    }
    其他的
    {
    表1.getRange(“I3:I29”)。挫折背景(“紫色”);
    }
    如果(值8>值1)
    {
    表1.getRange(“J3:J29”).立根背景(“红色”);
    }
    其他的
    {
    表1.getRange(“J3:J29”)。挫折背景(“紫色”);
    }
    如果(值9>值1)
    {
    表1.getRange(“K3:K29”).立根背景(“红色”);
    }
    其他的
    {
    表1.getRange(“K3:K29”).退根地(“紫色”);
    }
    如果(值10>值1)
    {
    表1.getRange(“L3:L29”).立根背景(“红色”);
    }
    其他的
    {
    表1.getRange(“L3:L29”)。挫折背景(“紫色”);
    }
    如果(值11>值1)
    {
    
    function onEdit(e)
    {
    
      var sheet = SpreadsheetApp.getActiveSheet();
      var sName = sheet.getSheetName();
     // var row   = range.getRow();
    // var col   = range.getColumn(); var range = SpreadsheetApp.getActiveSpreadsheet().getRange("D3:D29");
    var value1 = sheet.getRange(29,2).getValue();               //Getting value from B29 in "Raw Data"
        var value2 = sheet.getRange(30,4).getValue();              //Getting value from D30 in "Raw Data"
       var value3 = sheet.getRange(30,5).getValue(); 
      var value4 = sheet.getRange(30,6).getValue(); 
      var value5 = sheet.getRange(30,7).getValue(); 
      var value6 = sheet.getRange(30,8).getValue(); 
      var value7 = sheet.getRange(30,9).getValue(); 
    var value8 = sheet.getRange(30,10).getValue(); 
    var value9 = sheet.getRange(30,11).getValue(); 
    var value10 = sheet.getRange(30,12).getValue();   
    var value11 = sheet.getRange(30,13).getValue(); 
      var value12 = sheet.getRange(30,14).getValue(); 
      var value13= sheet.getRange(30,15).getValue(); 
    
        if(value2>value1)
        {
          sheet.getRange("D3:D29").setBackground('red');
        }
        else
        {
          sheet.getRange("D3:D29").setBackground('purple');
        }
    
    
       if(value3>value1)
        {
          sheet.getRange("E3:E29").setBackground('red');
        }
        else
        {
          sheet.getRange("E3:E29").setBackground('purple');
        }
    
       if(value4>value1)
        {
          sheet.getRange("F3:F29").setBackground('red');
        }
        else
        {
          sheet.getRange("F3:F29").setBackground('purple');
        }
    
       if(value5>value1)
        {
          sheet.getRange("G3:G29").setBackground('red');
        }
        else
        {
          sheet.getRange("G3:G29").setBackground('purple');
        }
    
       if(value6>value1)
        {
          sheet.getRange("H3:H29").setBackground('red');
        }
        else
        {
          sheet.getRange("H3:H29").setBackground('purple');
        }
    
      if(value7>value1)
        {
          sheet.getRange("I3:I29").setBackground('red');
        }
        else
        {
          sheet.getRange("I3:I29").setBackground('purple');
        }
    
       if(value8>value1)
        {
          sheet.getRange("J3:J29").setBackground('red');
        }
        else
        {
          sheet.getRange("J3:J29").setBackground('purple');
        }
    
       if(value9>value1)
        {
          sheet.getRange("K3:K29").setBackground('red');
        }
        else
        {
          sheet.getRange("K3:K29").setBackground('purple');
        }
    
       if(value10>value1)
        {
          sheet.getRange("L3:L29").setBackground('red');
        }
        else
        {
          sheet.getRange("L3:L29").setBackground('purple');
        }
    
       if(value11>value1)
        {
          sheet.getRange("M3:M29").setBackground('red');
        }
        else
        {
          sheet.getRange("M3:M29").setBackground('purple');
        }
    
       if(value12>value1)
        {
          sheet.getRange("N3:N29").setBackground('red');
        }
        else
        {
          sheet.getRange("N3:N29").setBackground('purple');
        }
    
       if(value13>value1)
        {
          sheet.getRange("O3:O29").setBackground('red');
        }
        else
        {
          sheet.getRange("O3:O29").setBackground('purple');
        }
     //-------------------------------------------------------------- 
       var cell = SpreadsheetApp.getActive().getActiveCell();
      var row = cell.getRow();
      var col = cell.getColumn();
      var ss = SpreadsheetApp.getActiveSpreadsheet(); 
      var sheet = ss.getSheets()[0];
    
      var value1 = sheet.getRange(2, 1).getValue();
            var value2 = sheet.getRange(row, 3).getValue();
      //if col > A && col < K ...
      if(col > 2 && col < 4 && row > 2 && row < 29){ //C3:
        //do something
     var v = sheet.getRange(row,2).getValue();
    
        if (value1==="January") {if (value2==="90 Days"){sheet.getRange(row,5).setValue(v/3);sheet.getRange(row,6).setValue(v/3);sheet.getRange(row,7).setValue(v/3);}
                    if (value2==="60 Days"){sheet.getRange(row,5).setValue(v/2);sheet.getRange(row,6).setValue(v/2);}      
                          if (value2==="30 Days"){sheet.getRange(row,5).setValue(v);}      }
    
        if (value1==="February") {if (value2==="90 Days"){sheet.getRange(row,6).setValue(v/3);sheet.getRange(row,7).setValue(v/3);sheet.getRange(row,8).setValue(v/3);}
                    if (value2==="60 Days"){sheet.getRange(row,6).setValue(v/2);sheet.getRange(row,7).setValue(v/2);}      
                          if (value2==="30 Days"){sheet.getRange(row,6).setValue(v);}      }
    
        if (value1==="March") {if (value2==="90 Days"){sheet.getRange(row,7).setValue(v/3);sheet.getRange(row,8).setValue(v/3);sheet.getRange(row,9).setValue(v/3);}
                    if (value2==="60 Days"){sheet.getRange(row,7).setValue(v/2);sheet.getRange(row,8).setValue(v/2);}      
                          if (value2==="30 Days"){sheet.getRange(row,7).setValue(v);}      }
    
        if (value1==="April") {if (value2==="90 Days"){sheet.getRange(row,8).setValue(v/3);sheet.getRange(row,9).setValue(v/3);sheet.getRange(row,10).setValue(v/3);}
                    if (value2==="60 Days"){sheet.getRange(row,8).setValue(v/2);sheet.getRange(row,9).setValue(v/2);}      
                          if (value2==="30 Days"){sheet.getRange(row,8).setValue(v);}      }
    
        if (value1==="May") {if (value2==="90 Days"){sheet.getRange(row,9).setValue(v/3);sheet.getRange(row,10).setValue(v/3);sheet.getRange(row,11).setValue(v/3);}
                    if (value2==="60 Days"){sheet.getRange(row,9).setValue(v/2);sheet.getRange(row,10).setValue(v/2);}      
                          if (value2==="30 Days"){sheet.getRange(row,9).setValue(v);}      }
    
        if (value1==="June") {if (value2==="90 Days"){sheet.getRange(row,10).setValue(v/3);sheet.getRange(row,11).setValue(v/3);sheet.getRange(row,12).setValue(v/3);}
                    if (value2==="60 Days"){sheet.getRange(row,10).setValue(v/2);sheet.getRange(row,11).setValue(v/2);}      
                          if (value2==="30 Days"){sheet.getRange(row,10).setValue(v);}      }
    
        if (value1==="July") {if (value2==="90 Days"){sheet.getRange(row,11).setValue(v/3);sheet.getRange(row,12).setValue(v/3);sheet.getRange(row,13).setValue(v/3);}
                    if (value2==="60 Days"){sheet.getRange(row,11).setValue(v/2);sheet.getRange(row,12).setValue(v/2);}      
                          if (value2==="30 Days"){sheet.getRange(row,11).setValue(v);}      }
    
        if (value1==="August") {if (value2==="90 Days"){sheet.getRange(row,12).setValue(v/3);sheet.getRange(row,13).setValue(v/3);sheet.getRange(row,14).setValue(v/3);}
                    if (value2==="60 Days"){sheet.getRange(row,12).setValue(v/2);sheet.getRange(row,13).setValue(v/2);}      
                          if (value2==="30 Days"){sheet.getRange(row,12).setValue(v);}      }
    
        if (value1==="September") {if (value2==="90 Days"){sheet.getRange(row,13).setValue(v/3);sheet.getRange(row,14).setValue(v/3);sheet.getRange(row,15).setValue(v/3);}
                    if (value2==="60 Days"){sheet.getRange(row,13).setValue(v/2);sheet.getRange(row,14).setValue(v/2);}      
                          if (value2==="30 Days"){sheet.getRange(row,13).setValue(v);}      }
    
        if (value1==="October") {if (value2==="90 Days"){sheet.getRange(row,14).setValue(v/3);sheet.getRange(row,15).setValue(v/3);sheet.getRange(row,16).setValue(v/3);}
                    if (value2==="60 Days"){sheet.getRange(row,14).setValue(v/2);sheet.getRange(row,15).setValue(v/2);}      
                          if (value2==="30 Days"){sheet.getRange(row,14).setValue(v);}      }
    
        if (value1==="November") {if (value2==="90 Days"){sheet.getRange(row,15).setValue(v/3);sheet.getRange(row,16).setValue(v/3);sheet.getRange(row,17).setValue(v/3);}
                    if (value2==="60 Days"){sheet.getRange(row,15).setValue(v/2);sheet.getRange(row,16).setValue(v/2);}      
                          if (value2==="30 Days"){sheet.getRange(row,15).setValue(v);}      }
    
         if (value1==="December") {if (value2==="90 Days"){sheet.getRange(row,16).setValue(v/3);sheet.getRange(row,17).setValue(v/3);sheet.getRange(row,18).setValue(v/3);}
                    if (value2==="60 Days"){sheet.getRange(row,16).setValue(v/2);sheet.getRange(row,17).setValue(v/2);}      
                          if (value2==="30 Days"){sheet.getRange(row,16).setValue(v);}      }
    }
    
    //-----------------------------------------------------------
      var sheet = SpreadsheetApp.getActiveSheet();
      var sName = sheet.getSheetName();
     // var row   = range.getRow();
    // var col   = range.getColumn(); var range = SpreadsheetApp.getActiveSpreadsheet().getRange("D3:D29");
    var value1 = sheet.getRange(29,2).getValue();               //Getting value from B29 in "Raw Data"
        var value2 = sheet.getRange(30,4).getValue();              //Getting value from D30 in "Raw Data"
       var value3 = sheet.getRange(30,5).getValue(); 
      var value4 = sheet.getRange(30,6).getValue(); 
      var value5 = sheet.getRange(30,7).getValue(); 
      var value6 = sheet.getRange(30,8).getValue(); 
      var value7 = sheet.getRange(30,9).getValue(); 
    var value8 = sheet.getRange(30,10).getValue(); 
    var value9 = sheet.getRange(30,11).getValue(); 
    var value10 = sheet.getRange(30,12).getValue();   
    var value11 = sheet.getRange(30,13).getValue(); 
      var value12 = sheet.getRange(30,14).getValue(); 
      var value13= sheet.getRange(30,15).getValue(); 
    
        if(value2>value1)
        {
          sheet.getRange("D3:D29").setBackground('red');
        }
        else
        {
          sheet.getRange("D3:D29").setBackground('purple');
        }
    
    
       if(value3>value1)
        {
          sheet.getRange("E3:E29").setBackground('red');
        }
        else
        {
          sheet.getRange("E3:E29").setBackground('purple');
        }
    
       if(value4>value1)
        {
          sheet.getRange("F3:F29").setBackground('red');
        }
        else
        {
          sheet.getRange("F3:F29").setBackground('purple');
        }
    
       if(value5>value1)
        {
          sheet.getRange("G3:G29").setBackground('red');
        }
        else
        {
          sheet.getRange("G3:G29").setBackground('purple');
        }
    
       if(value6>value1)
        {
          sheet.getRange("H3:H29").setBackground('red');
        }
        else
        {
          sheet.getRange("H3:H29").setBackground('purple');
        }
    
      if(value7>value1)
        {
          sheet.getRange("I3:I29").setBackground('red');
        }
        else
        {
          sheet.getRange("I3:I29").setBackground('purple');
        }
    
       if(value8>value1)
        {
          sheet.getRange("J3:J29").setBackground('red');
        }
        else
        {
          sheet.getRange("J3:J29").setBackground('purple');
        }
    
       if(value9>value1)
        {
          sheet.getRange("K3:K29").setBackground('red');
        }
        else
        {
          sheet.getRange("K3:K29").setBackground('purple');
        }
    
       if(value10>value1)
        {
          sheet.getRange("L3:L29").setBackground('red');
        }
        else
        {
          sheet.getRange("L3:L29").setBackground('purple');
        }
    
       if(value11>value1)
        {
          sheet.getRange("M3:M29").setBackground('red');
        }
        else
        {
          sheet.getRange("M3:M29").setBackground('purple');
        }
    
       if(value12>value1)
        {
          sheet.getRange("N3:N29").setBackground('red');
        }
        else
        {
          sheet.getRange("N3:N29").setBackground('purple');
        }
    
       if(value13>value1)
        {
          sheet.getRange("O3:O29").setBackground('red');
        }
        else
        {
          sheet.getRange("O3:O29").setBackground('purple');
        }
    
    }