我有一份包含五种不同工作表的文档。这些表包含五列的表格,每列超过400行。我试图用其他文本字符串替换这些表中的特定文本字符串。为此,我创建了另一个包含另一个表($ replacement-table)的工作表,其中包含我要在一列中替换的字符串以及我想在另一列中替换它们的字符串。要替换的字符串数量超过500,而且我不确定它们是否会在其他工作表中的某处出现。
虽然我可以手动完成,但我想提出一种自动化方法。因此,我正在查找一个脚本,该脚本查找$ replacement-table的A2中的值是否显示在文档中的任何其他位置,如果是,则将其替换为$ replacement-table的B2中找到的值。 A3和B3,A4和B4也是如此,依此类推。
可悲的是,我甚至没有起点,因为我没有经验告诉Google表格需要我做什么的语法或功能。任何想法(甚至是显而易见的/即插即用的解决方案?)如何实现我的目标,即用五个不同的表中的相应字符串替换在一个特定表格中排列的各种字符串?
答案 0 :(得分:1)
Here's a simple example that might help.
function replMyText(){
var ss=SpreadsheetApp.getActive();
var sh=ss.getSheetByName('replacements');
var rgtxt=sh.getRange('A1:A7');//text to replace
var rgrep=sh.getRange('D1:E5');//replacement table
var txtA=rgtxt.getValues();
var repA=rgrep.getValues();
for(var i=0;i<txtA.length;i++){
for(var j=0;j<repA.length;j++){
if(txtA[i][0]==repA[j][0]){
txtA[i][0]=repA[j][1];
}
}
}
rgtxt.setValues(txtA);
}
Here's an image of my test sheet: