[[20220816230402]] 『FILTER関数とSORTBY関数』(まる) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『FILTER関数とSORTBY関数』(まる)

 Excel2021導入につき、新関数の勉強をしています。
 FILTER関数と、SORTBY関数の使い方についてご指導、お願いします。

 【例題】
 テーブル1を「年齢>=40」をフィルタリングし、第1ソートキー「年齢降順」、第2ソートキー「ID降順」でソートした結果を得る。

 以下の「年齢スピル範囲」、「IDスピル範囲」の指定がわかりません。

 ●FILTERしてからSORTBYするケース
 =SORTBY(FILTER(テーブル1,テーブル1[年齢]>=40),年齢スピル範囲,-1,IDスピル範囲,-1)

 ●逆にSORTBYしてからFILTERするケース
 =FILTER(SORTBY(テーブル1,テーブル1[年齢],-1,テーブル1[ID],-1),年齢スピル範囲>=40)

 テーブル1
 ID	名前	年齢
 1	AAA	41
 2	BBB	20
 3	CCC	40
 4	DDD	40
 5	EEE	50

 希望結果
 ID	名前	年齢
 5	EEE	50
 1	AAA	41
 4	DDD	40
 3	CCC	40

< 使用 アプリ:2021、使用 OS:Windows10 >


 SORT関数じゃなくてSORTBY関数を使う必要ってあります?

 =LET(LIST,FILTER(テーブル1,テーブル1[年齢]>=40),SORTBY(LIST,INDEX(LIST,,2)))
                                                                         ↑
                                                                     年齢が何列目か
 とかですかね
(´・ω・`) 2022/08/16(火) 23:40

 ´・ω・`様、ありがとうございます。
 LET関数とINDEX関数を使うことで、希望通りの結果を得ることができました。
 「FILTERしてからSORTBY」でも「SORTBYしてからFILTER」でも同じ要領で、できました。(^^♪

 >SORT関数じゃなくてSORTBY関数を使う必要ってあります?
 SORT関数を2回使った方法も試したのですが、安定ソートにならなかったので....
 複数列でソートする場合、SORT関数を複数回使用することで、安定ソートって可能なんでしょうか?
(まる) 2022/08/17(水) 00:11

 >安定ソートにならなかったので
 ちょっと試した感じではSORT関数は安定ソートのように思いましたが、そうなんですか?
(´・ω・`) 2022/08/17(水) 00:39

 あれ?
 再度、SORT関数を2回使って、試してみたら希望通りの結果を得ることができました。
 寝ぼけてたのかな?申し訳ありません。

 ´・ω・`様、お付き合い、どうもありがとうございました。
(まる) 2022/08/17(水) 06:22

 ああ、原因がわかりました。自分のミスです。
 ソートする優先順位を逆にして、↓のようにしてたみたいです。
 =SORT(SORT(FILTER(テーブル1,テーブル1[年齢]>=40),3,-1),1,-1)

 やっぱり、寝ぼけてたみたいです。
(まる) 2022/08/17(水) 06:30

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.