Google apps script 当在谷歌表单中键入特定单词时,如何自动将其替换为不同的单词

Google apps script 当在谷歌表单中键入特定单词时,如何自动将其替换为不同的单词,google-apps-script,google-sheets,Google Apps Script,Google Sheets,所以,在我办公室开个玩笑,我正试图写一个脚本,每当我朋友在我们共享的谷歌表单电子表格中输入名字时,它就会把他的名字改成别的名字。 我得到了这段代码,它将所有键入的内容更改为其他内容,但我希望触发脚本的是他的名字 有人能快点帮我完成吗?(下面是尝试的代码) 非常感谢 function onEdit(e) { var sh=e.source.getActiveSheet(); var col=e.range.getColumn(); var row=e.range.getRow();

所以,在我办公室开个玩笑,我正试图写一个脚本,每当我朋友在我们共享的谷歌表单电子表格中输入名字时,它就会把他的名字改成别的名字。 我得到了这段代码,它将所有键入的内容更改为其他内容,但我希望触发脚本的是他的名字

有人能快点帮我完成吗?(下面是尝试的代码)

非常感谢

function onEdit(e)
{
  var sh=e.source.getActiveSheet();
  var col=e.range.getColumn();
  var row=e.range.getRow();
  if(sh.getName()=='Sheet1' )
  {
    sh.getRange(row,col).setValue('horse');
  }
}

我相信你的目标如下

  • 要将编辑的单元格中包含的特定值替换为其他特定值
  • 例如,当搜索值和替换值分别为
    foo
    bar
    时,当将
    sample foo sample
    放入单元格时,您希望将单元格值设置为
    sample bar sample
  • 您希望使用OnEdit触发器实现这一点
在这种情况下,我建议使用TextFinder。我认为使用TextFinder时,脚本可能会更简单。示例脚本如下所示

示例脚本:
  • 使用此脚本时,请将包含
    foo
    的值放入单元格。这样,脚本就可以运行了
参考资料:

谢谢你,伙计star@MarcoParasiliti感谢您的回复。我很高兴你的问题解决了。也谢谢你。
function onEdit(e) {
  var fromValue = "foo";  // Please set the search value.
  var toValue = "bar";  // Please set the replace value.

  var range = e.range;
  var textFinder = range.createTextFinder(fromValue);
  if (range.getSheet().getSheetName() != "Sheet1" || !textFinder.findNext()) return;
  textFinder.replaceWith(toValue);
}