Excel。1行おきにデータを並べ替えもして手早く抽出するにはどうしたらいい。
<SORT+FILTER関数>
2行1組のデータから、1行おきにデータを抽出したいのですが、抽出後、並べ替えをするなら、抽出した時に、並べ替えが終わっていたら、作業効率がいいわけですね。
次の表をつかって、説明します。
それぞれの店舗のデータは、販売数のデータと、売上高のデータで構成されています。
売上高だけのデータを抽出して、さらに、6月の売上高を降順にしたいとします。
オートフィルター機能をつかったとしても、ちょっと面倒な作業なわけですね。
ところが、SORT関数とFILTER関数を組み合わせてつかうことで、手早く抽出して並べ替えもおこなうことができます。
必要な見出しをA11:E11に設定しておきます。
A12に次の数式を設定します。
=SORT(FILTER(A2:E9,B2:B9="売上高"),5,-1,FALSE)
これで、売上高のデータで6月のデータの降順で抽出することができました。
そして、この数式は、オートフィル機能をつかわなくても、スピル機能によって、自動的に数式が拡張されます。
では、数式を確認していきましょう。
SORT関数は、並べ替えを行う関数です。
最初の引数は、「配列」。
つまり範囲選択ですね。
ここにFILTER関数をネストしてます。
FILTER関数の説明はあとに回します。
2番目の引数は「並べ替えインデックス」。
左から何列目を並べ替えの対象としますかという設定です。
6月で並べ替えをしたいわけですから、左から5つ目なので、「5」
3番目の引数は「並べ替えの順序」。
「-1」を設定することで降順と指示できます。
ちなみに「1」だと昇順です。
最後の引数は「並べ替えの基準」。
「FALSE」の「行で並べ替え」を設定します。
「TRUE」にすると、「列で並べ替え」を設定できます。
「配列」で設定したFILTER関数も確認しておきます。
最初の引数は、「配列」。
範囲選択ですね。
「A2:E9」を設定します。
2番目の引数は、「含む」。
これが条件に該当します。
「B2:B9="売上高"」とすることで、B2:B9で売上高が対象にすることができるというわけですね。
FILTER関数と色々な関数を組み合わせて使ってみることで、意外な方法が見つかるかもしれませんね。