[[20210122141351]] 『果物の名前が多い順のランキングを作ることのでき』(8878) ページの最後に飛ぶ

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

 

『果物の名前が多い順のランキングを作ることのできる関数について』(8878)

失礼致します。

りんご

 みかん 
 みかん 
 ぶどう 
 もも 
 みかん 
 ぶどう 
 りんご 
 りんご 
 みかん 

これを果物の名前が多い順のランキングを作ることのできる"関数"を教えてください。

エクセルの機能のソートで出来るのは知っていますが、"関数"で表示したいと思います。

よろしくお願い致します。

< 使用 Excel:Excel2016、使用 OS:Windows7 >


どなたかご回答願います。。。
(8878) 2021/01/22(金) 14:28

 名前が多い順のランキングが、ソートで出来るんですか。

 行き違うといけないので、どんなランキング表なのか正解を示して頂けませんか?

(半平太) 2021/01/22(金) 14:32


みかん
りんご
ぶどう
もも

のようにしたいです。

本物は500行あるので、
一つ一つにCOUNTIFは難しいので、
それを除いた方法をご教示願います。
(8878) 2021/01/22(金) 14:38


[[20210122105656]] 11:01 『果物の名前が多い順に並び替える』(ああわ)
同一人物?
(body) 2021/01/22(金) 14:39

 作業列にCOUNTIF関数で個数出して多い順でソートをかければどうでしょうか?
(なるへそ) 2021/01/22(金) 14:45

 大きい順の間違いでしたが同数になるとだめみたいなので無視下さい
(なるへそ) 2021/01/22(金) 14:47

 何度もすみません作業列の個数と果物名の列と両方ソートかければいけますね
(なるへそ) 2021/01/22(金) 14:50

 並べ替えは10個のものを4個にすることはできない(のでは? 出来るのかなぁ‥)

 (1) B1セル =IFERROR(INDEX(A:A,1000-MOD(AGGREGATE(14,6,(COUNTIF(A$1:A$500,A$1:A$500)*1000+1000-ROW(Z$1:Z$500))/(MATCH(A$1:A$500,A$1:A$500,0)=ROW(Z$1:Z$500)),ROW(Z1)),1000)),"")

 (2) B2セル =IF(B1="","",IFERROR(INDEX(A:A,1000-MOD(AGGREGATE(14,6,(COUNTIF(A$1:A$500,A$1:A$500)*1000+1000-ROW(Z$1:Z$500))/(MATCH(A$1:A$500,A$1:A$500,0)=ROW(Z$1:Z$500)),ROW(Z2)),1000)),""))
  下にコピー

<結果図>

 行  ___A___  ___B___
  1  りんご   みかん 
  2  みかん   りんご 
  3  みかん   ぶどう 
  4  ぶどう   もも   
  5  もも            
  6  みかん          
  7  ぶどう          
  8  りんご          
  9  りんご          
 10  みかん          

(半平太) 2021/01/22(金) 15:26


 重複の削除すれば4個にはなるのですが
(なるへそ) 2021/01/22(金) 15:30

 作業列を使ってもいいのなら

	A	B	C	D
1	りんご	みかん		3.999
2	みかん	りんご		4.998
3	みかん	ぶどう		
4	ぶどう	もも		2.996
5	もも			1.995
6	みかん			
7	ぶどう			
8	りんご			
9	りんご			
10	みかん			

 D1 =IF(COUNTIF($A$1:A1,A1)=1,COUNTIF(A1:$A$600,A1)+1-ROW()/1000,"")
 下コピー

 B1 =IFERROR(INDEX(A:A,MATCH(LARGE(D:D,ROW(A1)),D:D,0)),"")
 下コピー

 実際はA1セルからではなくても、ROW(A1)の「A1」を変更しないように

 参考まで
(笑) 2021/01/22(金) 15:47

 A列の1行目からデータがあり最大100行目まである場合。
 =IFERROR(INDEX(A:A,1000-MOD(AGGREGATE(14,6,COUNTIF(A$1:A$100,A$1:A$100)/(COUNTIF(INDIRECT("A1:A"&ROW($1:$100)),A$1:A$100)=1)*1000-ROW($1:$100),ROW(A1)),1000)),"")
 と入力して下へフィルコピーではどうだろうか?
(ねむねむ) 2021/01/22(金) 16:27

 COUNTIFで出した数字を重複の削除する前にテキストに変更しておいて
 さらに作業列で一番上は1で2つ目の行に
 A列に果物名、B列にCOUNTIFで出した数字をテキストでコピー
 =IF(AND(B1=B2,A1<>A2),C1,IF(AND(A1<>A2,B1<>B2),COUNTIF(B:B,B1)+C1,""))
 で下にフィルコピーすれば順位も出せます(同数になっても大丈夫だと思います)
 RANK関数やLARGE関数の使い方がわからないので上記式で
(なるへそ) 2021/01/22(金) 17:34

コメント返信:

[ 一覧(最新更新順) ]


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