在 Google 电子表格中搜索相同的值并追加到 GAS 的下一列中

Search Google Spreadsheet for same value and append in next column in GAS

我有一个 Google 电子表格,如下所示:

ID   |   winkelName  |   26/05/2015   |   
 1   |   Foo         |                |   
 2   |   Bar         |                |   
 3   |   Foo2        |                |   
 4   |   Bar2        |                |   

我正在尝试读取和写入具有以下结构的对象数组:

history[i].storeName
history[i].checkIns

我想做的是在列日期 (26/05/2015) 下的同一行中写下所有签到次数(具有相同的 winkelName)。但我仍然不知道实现此目标的最佳方法是什么?

这是我的第一次尝试:

function writeHistory(history) {
  var sheet = historySheet.getSheets()[0];
  historySheet.setActiveSheet(sheet);
  var nextRow = sheet.getLastRow(); // get next row
  var rows = sheet.getDataRange().getValues();
  var lastColumn = sheet.getLastColumn();
  sheet.insertColumnAfter(lastColumn);
  lastColumn++;
  sheet.getRange(1, lastColumn).setValue(new Date());

  var column = sheet.getLastColumn();
   for(i in rows) {
    if(i != 0) {
     if(rows[i][1] == history[i].winkelName) {
       sheet.getRange(i, column).setValue(history[i].checkIns); // this is not fully working
     }
    }
   }   
 }

在 Google 电子表格中,您可以一次写入一系列单元格。为此,创建一个多维数组,其中包含一列,每一行都有一个维度,在每一行中,您要写入的每个单元格都有一个维度。

循环检查,设置数组中的单元格值并使用 sheet.getRange(1,column-index).setValue([your array]);

写入值

同时检查:Google's best practices on dealing with range values