是否有重新排序Google表格标签的功能?我们希望将它们安排在每个上面获得的特定值上,
/** ... */
var ss = SpreadsheetApp.getActiveSpreadsheet();
// Store all the worksheets in this array
var sheetNameArray = [];
var sheets = ss.getSheets();
for (var i = 0; i < sheets.length; i++) {
z = sheets[i].getRange(3, 5);
z = z.getValue();
sheetNameArray.push(z);
}
/** Use value in array to reorder sheets */
答案 0 :(得分:1)
您想使用sheetNameArray
中的工作表名称对打开的电子表格中的工作表重新排序。如果我的理解是正确的,那么这个示例脚本怎么样?此示例脚本使用moveActiveSheet()
在打开的电子表格中重新排序工作表。
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheetNameArray = [];
var sheets = ss.getSheets();
for (var i = 0; i < sheets.length; i++) {
z = sheets[i].getRange(3, 5);
z = z.getValue();
sheetNameArray.push(z);
}
sheetNameArray.forEach(function(e, i){
ss.setActiveSheet(ss.getSheetByName(e));
ss.moveActiveSheet(i+1);
});
sheetNameArray
。sheetNameArray
中的工作表名称必须包含在已打开的电子表格中。sheetNameArray
的长度必须与var sheets = ss.getSheets();
的长度相同。如果我误解了你的问题,我很抱歉。