在Google App脚本中,你可以使用getFilteredRows()
方法获取筛选后的行索引数组,并使用getValues()
方法获取所有行的数据数组。然后,你可以使用这些行索引数组来筛选数据数组,以保持筛选后的行数值保持一致。
以下是一个示例代码:
function keepFilteredRowsConsistent() {
// 获取电子表格对象
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
// 获取所有行的数据数组
var range = sheet.getDataRange();
var data = range.getValues();
// 获取筛选后的行索引数组
var filter = range.getFilter();
var filteredRows = filter.getRange().getFilteredRows();
// 根据筛选后的行索引数组筛选数据数组
var filteredData = filteredRows.map(function(row) {
return data[row];
});
// 输出筛选后的数据数组
Logger.log(filteredData);
}
在上面的示例中,首先获取电子表格对象和所有行的数据数组。然后,获取筛选器对象并使用getFilteredRows()
方法获取筛选后的行索引数组。接下来,使用map()
方法和筛选后的行索引数组来筛选数据数组,最后将筛选后的数据数组输出到日志中。
你可以根据自己的需求进一步处理筛选后的数据数组,比如将其写入另一个电子表格或进行其他处理。