如果单元格包含文本,则自动将文本添加到另一个列单元格

时间:2014-07-09 09:17:27

标签: google-apps-script google-sheets

我的工作表有两列,第一列包含“Done”,“Escalate”,“reject”。现在我想要的是当我输入升级时,它将在另一列上生成“无法在线验证”..

| A      | B                      |                                                    
|Done    |                        |                  
|Escalate|Unable to verify online |              
|Reject  |                        |                                                

我会在B栏第2行尝试 =if(A2 = "Escalate","HAHA","") 并且它可以正常运行,现在我想要的是将它应用于整个列。

例如,如果在A列的任何位置找到单词escalate,则无法验证将出现在同一行的B列上。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

您必须编写自定义函数才能执行此操作。在电子表格中,按照菜单栏上的Tools-->Script Editor...进行操作。最后输入以下代码:

function fillColB() {
  var s = SpreadsheetApp.getActiveSheet();
  var data = s.getDataRange().getValues();
  var data_len = data.length;
  for(var i=0; i<data_len; i++) {
    if(data[i][0] == "Escalate") {
      s.getRange(i+1,2).setValue("unable to verify online");
      }
    }
  }

有几种方法可以调用该函数,最简单的方法是在单元格中输入formuala =fillColB()并单击Enter。或者,您可以设置eventadd a menu item