Googleスプレッドシートで2列を並べ替え


9

だから私は1列による自動ソートに関して次の答えを見つけました、それはうまく いきますGoogle Spreadsheet auto-sortingにいくつかのデータを作るにはどうすればよいですか?

ただし、私の使用例では、2つの列のソートが必要です。1列目は整数、2列目は日付です。最初に整数列を並べ替え、次に各数値内で日付を並べ替えます。

助言がありますか?

回答:


9

次のコード行から始めます。

var range = sheet.getRange("A1:B10");

並べ替えはさまざまな方法で実行できます。

  1. range.sort([1,2]);
  2. range.sort([{column: 1, ascending: true}, {column: 2, ascending: true}]);

ソートタイプはデフォルトで昇順であるため、どちらの方法も同じですが、2番目のオプションでは、TRUEがに変更されたときに別のソート順を使用できますFALSE

参照を参照してください:range.sort


1
早速のご返事ありがとうございます。あなたの答えは私には理にかなっています。私は成功した知識を実装しました。
ベトナム

わかりました、これは初めてです...上記のコードを正確にどこに入力しますか?

@robb OPが使用するリファレンスを参照してください。これにより、説明付きで回答が得られます。
Jacob Jan Tuinstra、2016年

2

パーティーには少し遅れましたが、これは私がやったことです。

function onEdit(event){
  var sheet = event.source.getActiveSheet();
  if(sheet.getName()=='Sort by country full'){
    var editedCell = sheet.getActiveCell();
    var columnToSortBy = 16;
    var columnToSortBy2 = 2;
    var tableRange = "A2:AU1451";
    if(editedCell.getColumn() == columnToSortBy){   
      var range = sheet.getRange(tableRange);
      range.sort( [{ column : columnToSortBy },{column: columnToSortBy2,ascending: false }] );
    }
  }
}

最初に16列目で並べ替えます。私にとっては国、次に2列目のスコア付けの降順で並べ替えます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.