我正在运行一个脚本,该脚本使用消息框更改公式中的值。
var searchtext = Browser.inputBox("Enter search text");
var replacetext = Browser.inputBox("Enter replace text");
var form = ss1.getRange("D3");
var formula = form.getFormula();
var updated =formula;
updated.indexOf(searchtext);
updated = updated.replace(searchtext, replacetext);
form.setFormula(updated);
var form2 = ss1.getRange("D10");
var formula2 = form2.getFormula();
var updated2 =formula2;
updated2.indexOf(searchtext);
updated2 = updated2.replace(searchtext, replacetext);
form2.setFormula(updated2);
正如您所注意到的,我必须为我拥有的不同范围重复代码。在上面的代码中,我有 D3 和 D10 范围。我还有大约 20 个范围需要替换公式。我创建了这个数组,希望在脚本运行时一起完成它们,但我没有看到任何变化。任何想法为什么会发生这种情况?
function dash(){
var ss1 = SpreadsheetApp.getActiveSpreadsheet();
var searchtext = Browser.inputBox("Enter search text");
var replacetext = Browser.inputBox("Enter replace text");
var rangeArray = ss1.setActiveSheet(ss1.getSheetByName("Ranges").getRange("A1:A5").getValues());
var daily = ss1.setActiveSheet(ss1.getSheetByName("Daily"));
for(var i in rangeArray){
var form = daily.getRange(rangeArray[i][0]);
var formula = getRange(form).getFormula();
var updated =formula;
updated.indexOf(searchtext);
updated = updated.replace(searchtext, replacetext);
form.setFormula(updated);}
}