因此,我准备了一个电子表格,用于记录在某些python文件中找到的功能的描述。TLDR这些描述很难阅读,原因是文件遗留下来的混乱情况。
所以我的解决方案是:
function onEdit(e) {
const desFix = ['"', '
'];
let activeSheet = e.source.getActiveSheet();
let range = e.range;
const desc = range.getValue();
const rdesc = desc.toString();
for (let i=0; i<desFix.length; i++){
const rep = rdesc.replace(desFix[i]," ");
range.setValue(rep);
}
}
但是它仅在我需要多次发生时才在第一次出现时起作用。我发现并尝试实现/转换为电子表格api中断的所有内容。我需要做什么才能使其多次运行的任何想法?
我相信你的目标如下。
"
,并

以" "
在活动范围在谷歌电子表格。rdesc
使用的也是相同的rdesc.replace(desFix[i]," ")
。这样,仅

替换了第二个循环中的第一个循环。我认为这是你遇到问题的原因。setValue
其用于for循环中,过程成本会很高。因此,在这个答案中,我建议使用TextFinder修改你的脚本。使用TextFinder修改脚本后,脚本将如下所示。
function onEdit(e) {
const desFix = ['"', '
'];
desFix.forEach(f => e.range.createTextFinder(f).matchCase(true).replaceAllWith(" "));
}
"
,并

在单元格中的数值替换到" "
。当你想使用脚本编辑器运行脚本时,也可以使用以下脚本。使用以下脚本时,请myFunction()
在脚本编辑器上运行。这样,将检查活动工作表中的所有单元格值。
function myFunction() {
const desFix = ['"', '
'];
const sheet = SpreadsheetApp.getActiveSheet();
desFix.forEach(f => sheet.createTextFinder(f).matchCase(true).replaceAllWith(" "));
}
google-apps-scropt
@Acha欢迎。谢谢你让我知道。很高兴您的问题得到解决。如果您的问题已解决,请按接受按钮。与您有相同问题的其他人也可以将您的问题作为可以解决的问题。而且我认为您的问题和解决方案将对他们有用。如果找不到按钮,请随时告诉我。stackoverflow.com/help/accepted-answer