0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

[GAS]すべてのシートの中身を自動でA列基準で昇順にするロジック

Last updated at Posted at 2022-05-07

どういうときに使う?

シート数が多い状態で手作業ですべてのシートで昇順にするをクリックしたくないときに使ってみてください。

筆者は検索エンジンでcountを取得したとき、id基準ではなく件数基準の順番で表示されてしまったのをそのままスプレッドシートに移してしまったため、この作業が発生しました。

件数が多く300シートあったため手作業が嫌になり片手間で作りました。

せっかくだから共有しておこうと思いこの記事を書きました。

ソースコードと説明(コメントアウト参照)

function sortRowsInAllSheetsAsc() {
  var rng
  var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
  var all_sheet_list = spreadsheet.getSheets();
  var sort_info = {
    'sheet_list':{},
    'sheet_name_list':[]
  };

  try {

    // 下の記述でforを回せるように各シートの情報を配列sort_infoに格納
    for (var count = 0; count < all_sheet_list.length; count++) {
      var sheet_name = all_sheet_list[count].getName();      
      sort_info['sheet_list'][sheet_name] = all_sheet_list[count];
      sort_info['sheet_name_list'].push(sheet_name);
    }

    for (var sheet_count = 0; sheet_count < sort_info['sheet_name_list'].length; sheet_count++) {
      
      // 準備したシートを順次呼び出す
      var sheet_name = sort_info['sheet_name_list'][sheet_count];
      var active_sheet = sort_info['sheet_list'][sheet_name];
      Logger.log(sheet_name)
      active_sheet.activate();

      //sort範囲を指定
      rng = active_sheet.getRange("A:B");

      //1列目(A列)を昇順になるようにrngの範囲を整順
      rng.sort([{column:1,ascending:true}]);
    }

    // 成功したらspreadsheetの画面で報告
    Browser.msgBox('正常終了。ページを更新してください。');

      } catch(e) {
    // エラーが発生した場合は、spreadsheetの画面でその旨を表示してから処理中断
    Browser.msgBox(e.lineNumber + ':' + e);
  }
}

使い方

Google App Sheetを使えるようにして(この説明は割愛します)、コピーペーストして実行していただければすぐに使えます。
A列が嫌な場合はrng.sort([{column:1,ascending:true}]);のcolumn:1を好きな数字に変更すると他の列を基準とした昇順になります。

余談(着想の元になった記事)

記事の着想のもととなり、かつまるまる使わせてもらった内容として下記のものがあったため、こちらを紹介してこちらの記事は締めとさせていただきます。

シート自体を名前で昇順にする方法についての記事

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?