如何加速脚本隐藏满足特定条件的行
How to speed up a script to hide rows that meet certain condition
我有以下函数,它可以逐行搜索列,并在找到x时隐藏行。它可以工作,但速度很慢。
function SummaryViewGenerate() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
var lastRow = sheet.getLastRow();
for( i=1 ; i<=lastRow ; i++) { // i <= lastRow
var status = sheet.getRange("K"+i).getValue();
if (status == "x") { // status == "x"
sheet.hideRows(i);
}
}
}
问题是,它是超级慢,我使用。有什么改进的办法吗?有人在另一个线程中提到将其放入数组。我仍然是一个编码新手,所以任何帮助在正确的方向将是有用的。
我认为getValues()会更快。参考:https://developers.google.com/apps-script/reference/spreadsheet/range#getValues()
- 使用getValues从电子表格中检索所有数据。数据以二维数组形式存放。
- 从2D数组中搜索"x"
示例如下。
function SummaryViewGenerate(){
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
var array = sheet.getRange('k1').offset(0, 0, sheet.getLastRow(), 1).getValues();
for (var row in array) {
for (var col in array[row]) {
if(array[row][col] == "x") {
sheet.hideRows(row + 1); // (row + 1) is row number.
}
}
}
}
相关文章:
- 在单击任何位置时隐藏元素,而不检查每次DOM单击
- 显示5秒后隐藏潜水
- 在不使用JQuery的情况下隐藏DOM中的选定元素
- 剑道UI内联编辑:如何在点击其他按钮时隐藏按钮
- 浮动页脚栏-使用Bootstrap隐藏
- 在jquery中为显示/隐藏设置cookie
- 单击按钮后如何逐个调用分区,上一个分区将隐藏
- 从var向代码隐藏函数传递值
- Image赢得't隐藏在滚动jQuery上
- 具有rowGrouping的数据表无法隐藏列
- Jquery隐藏未触发
- JavaScript 检查隐藏字段中的值并将其设置为隐藏字段值
- 分部隐藏在jquery中不起作用
- 点击后隐藏潜水?(但如果Div是一面旗帜呢?)
- javascript.点击隐藏事件故障
- 禁用(而不是隐藏)浏览器滚动条
- 当满足其他选择菜单值时取消隐藏选择菜单 - jQuery
- 如何加速脚本隐藏满足特定条件的行
- 如果长度和n -pattern不满足角度,则隐藏元素
- 如何在不满足条件时使用ngShow/ngHide隐藏DOM元素