Lun*_*ang 4 filter google-sheets google-apps-script
有没有办法在Google Sheet中按脚本启用某个范围的数据过滤器?目前这可以手动完成,但我不想选择范围,然后单击"数据",然后启用过滤器.
我知道过滤器将保留在现有的工作表中.但是,我尝试对通过脚本生成的新电子表格应用过滤器.
我的想法是:
function foo() {
var spreadsheet = SpreadsheetApp.getActive();
var infoSheet = spreadsheet.insertSheet('sheetName', spreadsheet.getNumSheets());
infoSheet.getRange(1, 1, 5, 5). -> enable filter?
...
}
Run Code Online (Sandbox Code Playgroud)
如何以编程方式实现目标?
Filter
s现在也可以在本机电子表格服务中使用,而无需通过"高级服务"激活表格REST API.
上面的Sheets REST API方法,适用于原生Apps脚本:
function applyFilter() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var dataSheet = ss.getActiveSheet();
var toFilter = dataSheet.getDataRange();
var filter = toFilter.createFilter();
// Make some criteria to filter with.
var fcb = SpreadsheetApp.newFilterCriteria();
/* use FilterCriteria methods */
fcb.whenCellNotEmpty();
// Filter the range based on the 1st column:
filter.setColumnFilterCriteria(1, fcb.build());
}
Run Code Online (Sandbox Code Playgroud)
进一步阅读: