2017-08-03 96 views
-1

我无法找到在第27行错误的测试功能:缺少分号

var rowValues[column-2] = range.getValues(); 

我的代码:

var ss = SpreadsheetApp.getActiveSpreadsheet(); 
var sheet = ss.getSheets()[0]; 

var lastRow = sheet.getLastRow(); 
var lastColumn = sheet.getLastColumn(); 

var now = new Date();  

function test() { 

    for (row = 2; row < lastRow ; row++) { 

     range = sheet.getRange(row, 1, 1, 1); 
     dateAdd = range.getValues(); 

     range = sheet.getRange(row, 5, 1, 1); 
     dateValidation = range.getValues(); 

     timeDiff = Math.abs(now.getTime() - Date.parse(dateAdd)); 
     diffDays = Math.ceil(timeDiff/(1000 * 3600 * 24)); 

     if (diffDays==1 && dateValidation==""){ 
      for (column = 2; column < lastColumn ; column++) { 
       range = sheet.getRange(row, column, 1, 1); 
       rowValues[column-2] = range.getValues(); 
      } 

      MailApp.sendEmail("[email protected]","Subject %n","Description: \n %d \n %d \n %d",row,rowValues[0],rowValues[1],rowValues[3]); 
     } 

     } 

    } 
+0

'变种rowValues [柱-2]'无效。你可能只是指没有'var'的'rowValues [column-2]'。 'var'用于声明变量,而不是数组索引。 –

回答

-1

我已经找到了解决办法:

range = sheet.getRange(row, column, 1, 1); 
rowValues.push(range.getValues()); 
0

尝试更新该行:

这里:

var rowValues[column-2] = range.getValues(); 

要:

rowValues[column-2] = []; 
    rowValues[column-2].push(range.getValues()); 
4

你使用了额外的var,你不应该有一个 - 实际上你已经做到了这一点:

var array = []; 
 
var array[0] = "foo";

您应该在哪里有这个:

var array = []; 
 
array[0] = "foo";

因此改变这行代码的:

var rowValues[column-2] = range.getValues(); 

rowValues[column-2] = range.getValues();