要清除范围的内容但不清除任何过滤结果,你可以使用 Apps Script 中的 clearContent()
方法来实现。以下是一个示例代码:
function clearRangeContent() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var range = sheet.getRange('A1:B10');
var filter = range.getFilter();
var filterCriteria = filter.getRange().getFilterCriteria();
range.clearContent();
filter.setColumnFilterCriteria(1, filterCriteria[0]);
filter.setColumnFilterCriteria(2, filterCriteria[1]);
}
在上面的示例代码中,我们首先获取当前活动电子表格的活动工作表,并指定要清除内容的范围 A1:B10
。然后,我们获取范围的过滤器和过滤器的条件。接下来,我们使用 clearContent()
方法来清除范围的内容。
最后,我们使用 setColumnFilterCriteria()
方法将之前获取的过滤器条件重新应用到过滤器中,以确保不清除过滤器的结果。
请注意,上述代码假设你已经在电子表格中设置了过滤器。如果你的电子表格中没有过滤器,或者要清除的范围没有过滤器,你可以省略与过滤器相关的代码。
希望这可以帮助到你!