javascript - 无法从未定义中读取属性 "0"。错误的 Google Apps 脚本

标签 javascript google-apps-script google-sheets

我得到无法从未定义中读取属性“0”。第 16 行出错。( while (colunaDias[emptyCell][0] <= dias) )

google SpreadSheets应该是一个很简单的功能。我看不出我做错了什么......

奇怪的是,如果我不使用变量“dias”,而是使用整数。 while 函数起作用....

function myFunction() {

  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var leadsSheet = ss.getSheetByName("Leads Todas as Categorias, menos outros - Days (5days)");
  var targetSheet = ss.getSheetByName("feticaria");

  var cellLeads = leadsSheet.getRange(1,1).getValue();
  //var cellTarget = targetSheet.getRange(1,1).setValue(valor);

  var colunaDias = leadsSheet.getRange('B:B').getValues();
  var sourceMedium = leadsSheet.getRange('A:A').getValues();
  var emptyCell = 16;
  var dias = 1;

  while (colunaDias[emptyCell][0] != ""){
    while (colunaDias[emptyCell][0] <= dias){
        dias++;
        emptyCell++;
    }


    emptyCell++;

  }

  Logger.log(emptyCell);


}

最佳答案

我认为唯一可能导致该错误的是 emptyCell 大于 colunaDias 数组,即如果您的工作表小于 16 行(如果值你在这里显示的是正确的)。

在第一个 while 之前添加这一行:

Logger.log('emptyCell = '+emptyCell+'  and colunaDias.length = '+colunaDias.length);

我测试了你的脚本副本,它运行没有错误,除非我在 1000 行工作表上定义 emptyCell > 1000。

关于javascript - 无法从未定义中读取属性 "0"。错误的 Google Apps 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25059641/

相关文章:

javascript - Angular 2 document.removeEventListener 在类里面不起作用

javascript - 根据单元格内容更改样式元素

javascript - 更新推特状态

google-apps-script - 从 Google Web App 检索公共(public) IP

javascript - 使用 Google Apps 脚本查找二维数组内部

google-sheets - ImportRange "Result to large"- 如何导入我需要的所有数据?

Javascript TypeError,其中 "options"参数必须是对象类型

google-apps-script - 使用 Google Sheet 导入 XML 并每分钟自动刷新

xpath - Google Sheets importxml 中 XPath 中的多个索引

redirect - 如何在 Google Apps 脚本中获取位置 header