Reorder Worksheets in Google Spreadsheets by Name

You have a Google Spreadsheet with multiple worksheets and, to making organization easier, you would like to reorder or sort the various sheets inside the spreadsheet by name.

Google Apps Script to the rescue. Paste the snippet inside the Google Sheet’s script editor and run the sortGoogleSheets method from the menu.


/* Credit: https://gist.github.com/chipoglesby/26fa70a35f0b420ffc23 */

function sortGoogleSheets() {

  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++) {
    sheetNameArray.push(sheets[i].getName());
  }

  sheetNameArray.sort();

  // Reorder the sheets.
  for( var j = 0; j < sheets.length; j++ ) {
    ss.setActiveSheet(ss.getSheetByName(sheetNameArray[j]));
    ss.moveActiveSheet(j + 1);
  }
}