javascript - 无法设置行中单元格的值,因为它已转换为没有方法的对象或数组

标签 javascript google-apps-script google-sheets

我正在尝试编写一个函数,该函数将迭代主电子表格中的每一行,并根据第二个电子表格中的每一行检查第三列的值,并将其与第六列中的值进行比较,然后更改该值根据结果​​在主电子表格的第四列中。该脚本是一个独立的脚本,因为它是一个更大项目的一部分。

问题是,当我尝试设置电子表格中第四列的值时,收到一条错误消息“无法在 SENT 对象中找到函数 setValue”。 SENT 是该单元格中的值,我不明白它如何成为一个对象,也不明白我需要如何更改代码才能获取该值来更改它。我检查了这篇关于有人遇到问题的帖子 not being able to act on a date value ,但我不知道如何获取该反馈并将其应用于此问题。

function eFormCheck() {
  var masterSS = SpreadsheetApp.openById("mastersheet");
  var masterSheet = masterSS.getSheets()[0];
  var masterRange = masterSheet.getDataRange();
  var masterData = masterRange.getValues();
  var workersCompSent = "SENT";
  var workersCompRec = "RECEIVED";
  var workersCompSS = SpreadsheetApp.openById("formsheet");
  var wcSheets = workersCompSS.getSheets()[0];
  var wcRange = wcSheets.getDataRange();
  var wcData = wcRange.getValues();
  for (var i = 1; i < masterData.length; i++) {
    var row = masterData[i];
    var email = row[2];
    var rowLog = row[3]; //on my spreadsheet this value is "SENT"
   for (var j = 1; j < wcData.length; j++) {
     var wcRow = wcData[j];
     var wcEmail = wcRow[5];
     if (email == wcEmail) {
         rowLog.setValue(workersCompRec);//having an issue with the value of the third column being an object, but I don't understand how its an object
     }
    }  
  }
}

最佳答案

setValue() 方法仅适用于 Range 类。您无法将 setValue() 方法链接到变量或单元格值。您必须首先定义一个范围。 getRange() 方法有 4 种变体。如果要在单个单元格中设置值,则必须获取单个单元格的范围。您可能需要在 getRange() 方法中使用变量 i 来获取行。如果列始终相同,那么您可以“硬编码”列值。

sheet.getRange(i, 4).setValue(workersCompRec);

关于javascript - 无法设置行中单元格的值,因为它已转换为没有方法的对象或数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34208939/

相关文章:

javascript - 调整视频大小 JavaScript

javascript - 如何在任何网络浏览器中运行 Puppeteer 代码?

javascript - Node.js 响应异步数据

datetime - formatDate() 给出正确的日期 -1 天(Google Apps 脚本)

google-apps-script - Google Script 中的面向对象前端是否有解决方法

java - 插入行而不覆盖数据

google-apps-script - Google Spreadsheet - 如何在执行脚本之前添加确认消息框

javascript - jquery .on() 未触发

google-apps-script - Google Apps 脚本 UrlFetchApp 返回未经授权的错误 401

excel - 满足条件(日期)时将各种事件合并到一个单元格中 google sheet