按值排列工作表Google表格 [英] Arrange sheets by value Google Sheets

查看:48
本文介绍了按值排列工作表Google表格的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

是否可以对Google表格中的标签重新排序?我们希望将它们安排在从它们各自获得的特定值上,

Is there a function to reorder the tabs in Google Sheets? We'd like to arrange them on a specific value obtained on each of them,

  /** ... */
  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 */

推荐答案

您要使用sheetNameArray中的工作表名称对打开的电子表格中的工作表进行重新排序.如果我的理解是正确的,那么该示例脚本如何?此示例脚本使用moveActiveSheet()对打开的电子表格中的工作表进行重新排序.

You want to reorder the sheets in the opened spreadsheet using the sheet names in sheetNameArray. If my understanding is correct, how about this sample script? This sample script reorders sheets in the opened spreadsheet using 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();的长度相同.
  • Note :

    • It supposes that your script can retrieve the sheet names to sheetNameArray.
    • The sheet names in sheetNameArray are required to be included in the opened spreadsheet.
    • The length of sheetNameArray is required to be the same with the length of var sheets = ss.getSheets();.
    • 如果我误解了你的问题,对不起.

      If I misunderstand your question, I'm sorry.

      这篇关于按值排列工作表Google表格的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆