Google sheets 试图写入一张以“打开”开头的谷歌工作表;openById“;

Google sheets 试图写入一张以“打开”开头的谷歌工作表;openById“;,google-sheets,Google Sheets,项目描述:从具有多个选项卡(每组一个)的花名册电子表格开始,每个选项卡具有行的成员列表。栏目是排练或节目日期。第二张包含扫描的考勤记录。打开考勤记录表并阅读每条记录。一列包含花名册工作表上工作表的选项卡名称。更改到该工作表并搜索扫描的成员。在与日期匹配的列上标记一个X表示出勤。用X标记扫描的考勤记录,表示已处理 除了将X最后写入ID打开的工作表外,一切都正常。我不知道更新相应行/列单元格的语法 我非常感谢你的帮助。谢谢 function processAttendanceRecords(){

项目描述:从具有多个选项卡(每组一个)的花名册电子表格开始,每个选项卡具有行的成员列表。栏目是排练或节目日期。第二张包含扫描的考勤记录。打开考勤记录表并阅读每条记录。一列包含花名册工作表上工作表的选项卡名称。更改到该工作表并搜索扫描的成员。在与日期匹配的列上标记一个X表示出勤。用X标记扫描的考勤记录,表示已处理

除了将X最后写入ID打开的工作表外,一切都正常。我不知道更新相应行/列单元格的语法

我非常感谢你的帮助。谢谢

function processAttendanceRecords(){
  var sheet = SpreadsheetApp.getActiveSpreadsheet();
  var ss = SpreadsheetApp.openById("1234567");
  var data = ss.getDataRange().getValues();
  for (var i = 1; i < data.length; i++) {
    var rhrsDate = Utilities.formatDate(data[i][3], "PST", "M/d");
    sheet.setActiveSheet(sheet.getSheetByName(data[i][1]));
    var members = sheet.getDataRange().getValues();
    var col = members[0].indexOf(rhrsDate);
    for (var j = 1; j < members.length; j++) {
      if (data[i][6] == members[j][0] && data[i][7] == members[j][1]) {
        SpreadsheetApp.getActiveSheet().getRange(j+1,col+1).setValue('X');
        SpreadsheetApp.getActiveSheet(ss).getRange(i+1,9).setValue('X');
      }
    }
  }
}
函数processAttendanceRecords(){
var sheet=SpreadsheetApp.getActiveSpreadsheet();
var ss=电子表格应用程序openById(“1234567”);
var data=ss.getDataRange().getValues();
对于(变量i=1;i
如果您是通过ID访问电子表格,那么最好提及工作表名称,否则默认情况下它将使用第一张工作表

var ss = SpreadsheetApp.openById("123456").getSheetByName("Sheet1");
由于尚未定义图纸名称,因此无法使用getRange(行、列)。因此,您需要像上面那样提及图纸名称,然后更改最后一行

ss.getRange(i+1,9).setValue('X');

如果您是通过ID访问电子表格,那么最好提及工作表名称,否则默认情况下将使用第一张工作表

var ss = SpreadsheetApp.openById("123456").getSheetByName("Sheet1");
由于尚未定义图纸名称,因此无法使用getRange(行、列)。因此,您需要像上面那样提及图纸名称,然后更改最后一行

ss.getRange(i+1,9).setValue('X');