【发布时间】:2020-08-26 00:49:22
【问题描述】:
const ss=SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Potential Matrix");
const rg=ss.getDataRange();
const vs=rg.getValues();
let d=0;
vs.forEach(function(r,i){
if(r.join('').length==0 || r.join('')=='false') {
ss.deleteRow(i+1-d++);
}
});
ss.insertRowBefore(1).getRange("1:1").clearFormat();
嗨@Cooper,感谢您提供的代码。不幸的是,它似乎没有将数字 12、13 和 14 之间的行计算为空白,因此不会删除它们。你给我的原始脚本在我没有复选框时工作,但现在有复选框它不起作用。有没有办法删除行,包括未勾选/勾选的复选框和非复选框的列的空数据?我在原始帖子中添加了“新图片供参考”以说明我的意思;
【问题讨论】:
-
你有没有做过什么来了解代码的作用并试图修改它? SO 不是免费的编码服务。见meta.stackoverflow.com/questions/261592
-
请告诉我这些行的
r.join()是什么。 -
嗨,是的,我已经从头开始为一个基本表创建了代码,并且已经学会了如何构建数据验证并将复选框插入到代码中。据我了解,这些行的 'r.join()' 正在搜索 '(' ')' (等于空白数据)。所以代码正在搜索空白数据,如果为真则删除行。我不知道如何调整代码以搜索行中的复选框,这就是我需要帮助的原因,我无意将其用作免费的编码服务,我很高兴学习并能够理解它。跨度>
标签: google-apps-script google-sheets rowdeleting