使用Google电子表格脚本将包含“Hello”的A列单元格与B列相邻单元格合并

9

我正在尝试合并包含A列中特定单词(例如“Hello”)的单元格,并与右侧单元格(在B列中)合并。

例如,A4 ='Hello',因此我想合并单元格A4和B4。

我目前有这段代码:

function formatCells() {

  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var s = ss.getSheetByName('Combined');
  var range = s.getDataRange()
  var values = range.getValues();

  for( var row = values.length -1; row >= 0; --row )
    if (values[row][1] == 'Hello')
      {s.getRange(row+1,1).mergeAcross();
}
}

但是这段代码似乎一直没有任何反应?有没有好心的人可以告诉我哪里出了问题呢?

非常感谢您的帮助。

1个回答

21

数组从0开始索引,所以A列的索引为0...你应该在条件中简单地使用values[row][0]

而要合并两个单元格,你需要获取一个像这样的两个单元格范围:

s.getRange(row+1,1,1,2).mergeAcross();

还要注意的是,由于合并方法不会合并内容,因此您将失去列B中的值。我不知道这是否对您构成问题...


我现在意识到自己之前做错了什么,多亏了你的帮助!再次感谢。 - Vin

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接