这两个脚本非常慢。我处理的数据集大约有 32 列 x 1000 行(增长速度相当快)。
我读过甚至使用过像数组一样处理数据的代码,这样您就只能对 google-services 进行一次调用,但我不确定这对我处理这种情况有什么帮助。
我需要根据使用 Google 表格的人隐藏某些列
这是实际的代码:
function HideColumns(){
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
var range = sheet.getRange("A1");
sheet.hideColumn(range);
range = sheet.getRange("C1:E1");
sheet.hideColumn(range);
range = sheet.getRange("G1");
sheet.hideColumn(range);
range = sheet.getRange("I1");
sheet.hideColumn(range);
range = sheet.getRange("K1");
sheet.hideColumn(range);
range = sheet.getRange("Q1:Z1");
sheet.hideColumn(range);
range = sheet.getRange("AC1:AG1");
sheet.hideColumn(range);
}
function ShowColumns(){
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
var range = sheet.getRange("A1");
sheet.unhideColumn(range);
range = sheet.getRange("C1:E1");
sheet.unhideColumn(range);
range = sheet.getRange("G1");
sheet.unhideColumn(range);
range = sheet.getRange("I1");
sheet.unhideColumn(range);
range = sheet.getRange("K1");
sheet.unhideColumn(range);
range = sheet.getRange("Q1:Z1");
sheet.unhideColumn(range);
range = sheet.getRange("AC1:AG1");
sheet.unhideColumn(range);
}
最佳答案
不幸的是,隐藏列是“仅限电子表格”功能,无法使其更快或批量...
也许您可以想象一个自定义 UI(使用 UiApp 或 HTMLService 构建)来仅显示用户相关数据?但这可能是不可能的,具体取决于您需要电子表格特定功能的程度......,而不是谈论它可能代表的工作。
关于optimization - 优化 Google 脚本以隐藏列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20131304/