Javascript 谷歌应用程序脚本-如何清除多个单元格';基于其他单元格的内容?
我试图检查一列的值是否有“不显示”字样,如果一个单元格有该值,我需要它删除同一行上的一些单元格,例如,如果列I5的值为“不显示”,我需要清除单元格B5、C5、D5、F5、G5。我试着写一些东西,但它不起作用,而且我对这方面还比较陌生。谢谢你的帮助我相信你的目标如下Javascript 谷歌应用程序脚本-如何清除多个单元格';基于其他单元格的内容?,javascript,google-apps-script,google-sheets,Javascript,Google Apps Script,Google Sheets,我试图检查一列的值是否有“不显示”字样,如果一个单元格有该值,我需要它删除同一行上的一些单元格,例如,如果列I5的值为“不显示”,我需要清除单元格B5、C5、D5、F5、G5。我试着写一些东西,但它不起作用,而且我对这方面还比较陌生。谢谢你的帮助我相信你的目标如下 当每行“I”列的值为No Show时,需要清除“B”、“C”、“D”、“F”和“G”列的单元格值 您希望使用谷歌应用程序脚本实现这一点 在这种情况下,我建议使用TextFinder和RangeList类的clearContent(
- 当每行“I”列的值为
时,需要清除“B”、“C”、“D”、“F”和“G”列的单元格值No Show
- 您希望使用谷歌应用程序脚本实现这一点
clearContent()
方法。示例脚本如下所示
示例脚本:
请将以下脚本复制并粘贴到Google电子表格的脚本编辑器中,并设置要使用的工作表名称,然后在脚本编辑器中运行函数myFunction
function myFunction() {
const sheetName = "Sheet1"; // Please set the sheet name.
const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(sheetName);
const ranges = sheet
.getRange("I1:I" + sheet.getLastRow())
.createTextFinder("No Show")
.matchCase(true)
.findAll()
.flatMap(r => {
const row = r.getRow();
return ["B", "C", "D", "F", "G"].map(e => e + row);
});
if (ranges.length > 0) sheet.getRangeList(ranges).clearContent();
}
- 当运行此脚本时,当每行的列“I”的值为
时,将清除列“B”、“C”、“D”、“F”和“G”的单元格值No Show
- 关于
的搜索值,当您要检查不显示
、不显示
等时,请删除不显示
。匹配框(true)