google-apps-script - Google Apps 脚本 - 自动过滤活动工作表
问题描述
我有以下脚本,旨在自动过滤活动工作表:
function setFilter() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var filter = {};
filter.range = {
sheetId: tab.getActiveSheetId()
};
filter.criteria = {};
// Which column to add the filter to
var columnIndex = 0;
filter['criteria'][columnIndex] = {
'hiddenValues': ["✘"]
};
var request = {
"setBasicFilter": {
"filter": filter
}
};
Sheets.Spreadsheets.batchUpdate({'requests': [request]}, ss.getId());
}
不幸的是,我收到一个参考错误,提到选项卡未定义 - 我需要更改什么?我试过删除 sheetID
解决方案
解释:
使用getActiveSheet获取活动工作表:
var tab = ss.getActiveSheet()
然后使用getSheetId获取活动工作表的 id:
tab.getSheetId()
解决方案:
function setFilter() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var tab = ss.getActiveSheet(); // added code
var filter = {};
filter.range = {
sheetId: tab.getSheetId() // modified code
};
filter.criteria = {};
// Which column to add the filter to
var columnIndex = 0;
filter['criteria'][columnIndex] = {
'hiddenValues': ["✘"]
};
var request = {
"setBasicFilter": {
"filter": filter
}
};
Sheets.Spreadsheets.batchUpdate({'requests': [request]}, ss.getId());
}
我假设您已经意识到这一点,但为了使代码正常工作,您需要从旧编辑器或新编辑器Google Sheets API
的选项卡中启用。Resources
Services
推荐阅读
- python - 如何连接 Qtoolbutton 和 QStackedWidget(都在同一个框架中)
- rest - 在服务器之间转发 cookie 以进行身份验证
- sql - 选择包含 NULL 的 MAX RANK
- mongodb - 如何从 MongoDB 集合中的数组中选择记录
- android - 数据绑定 - 无法复制完整内容
- java - java如何验证证书以及为什么我得到SSLHandshakeException
- c# - 检查范围对象是否在列表中
- c++ - 错误:查找数字是否为素数的代码仅在 47 之前有效
- java - 编译器在使用 JavaFX 时抛出 InvocationTargetException
- c# - 什么时候应该在自动属性上使用显式字段?