如果另一个单元格包含某些字符串,如何合并两个单元格?

时间:2014-02-22 08:09:57

标签: google-apps-script

如果A1是a,b,c,我希望B1和C1合并,但如果是其他的话,则不要合并。

我认为合并功能是
sheet.getRange('B1:C1').merge();
但我不知道如何检查A的值是什么,以及它是否是触发合并的字符串之一。

为了澄清合并位,我的意思是两个单元格成为一个跨越两列的单元格。

1 个答案:

答案 0 :(得分:0)

不确定我完全理解你想要的是什么,但下面的代码合并了细胞B1和amp;如果A1中的值符合您选择的3个条件之一,则为C1。

function onEdit(e){
  var range = e.range;
  Logger.log(range.getA1Notation());
  if(range.getA1Notation()!='A1'){return};
  if(range.getValue()=='a' || range.getValue()=='b' || range.getValue()=='c'){
    SpreadsheetApp.getActiveSheet().getRange('B1:C1').merge();
  }
}

在编辑单元格时自动运行,如果单元格不是A1,则不执行任何操作。


编辑:因为您的评论中显示您希望它适用于所有行,如果此行中的列A符合条件,则此版本将合并任意行中的col B和C中的单元格。

function onEdit(e){
  Logger.log(JSON.stringify(e));
  var range = e.range;
  if(range.getColumnIndex()!=1){return};
  if(range.getValue()=='a' || range.getValue()=='b' || range.getValue()=='c'){
    SpreadsheetApp.getActiveSheet().getRange(range.getRowIndex(),2,1,2).merge();
  }
}