【发布时间】:2022-11-30 05:15:46
【问题描述】:
我有一个应用于工作表的过滤器。我只想返回过滤器中的数据,而不是工作表的整个范围。
const sheet = SpreadsheetApp.openById(SHEET_ID).getSheetByName(SHEET_NAME)
const filter = sheet.getFilter();
// This returns the entire sheet's range rather than the filtered range.
const range = filter.getRange().getValues();
根据上面的代码,为什么我没有根据来自 Google 的 docs 获得所需的行为?
【问题讨论】:
-
filter.getRange() 只返回过滤器适用的范围。 getValues() 获取该范围内的所有值。您可能应该请求一个新方法,例如 getFiilteredValues();
-
显然
getFilteredValues()现在不存在。您是说目前无法使用 Google App Script 提供的功能来执行此操作?除了使用 JS 来过滤数据之外。我想避免提高性能。我已经有一个工作表过滤器,为什么我不能在代码中实际使用它? -
此外,当 getRange() 与 getFilter() 一起使用时,文档描述其工作方式的方式是欺骗性的:
Gets the range this filter applies to.
标签: google-apps-script google-sheets