[[20250305135220]] 『最大値の行と列番号の検索』(トマト&ブドウパン) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) |

| 全文検索 | 過去ログ ]

 

『最大値の行と列番号の検索』(トマト&ブドウパン)

100行×100列の表があります。
この表の最大値の行番号と列番号が知りたいです。

MAX関数で値はわかりますが
行番号と列番号を知りたいです。

INDEX関数とMATCH関数の組合せでは、
わかりませんでした。

どなたか教えて下さい。

< 使用 Excel:Microsoft365、使用 OS:Windows10 >


 A1セルからCV100セルまでの範囲の場合。
 行番号:=AGGREGATE(15,6,ROW(1:100)/(A1:CV100=MAX(A1:CV100)),1)
 列番号:=SUBSTITUTE(ADDRESS(1,AGGREGATE(15,6,COLUMN(A:CV)/(A1:CV100=MAX(A1:CV100)),1),4),1,"")

 ではどうだろうか?

 なお、列番号はA、B、C…の表記で出力するようにしている。

(ねむねむ) 2025/03/05(水) 15:08:19


 それともう一つ。
 最大値のセルは一つだけの場合を考えている。
(ねむねむ) 2025/03/05(水) 15:09:13

 A1セルからCV100セルまでの範囲の場合。
 行番号:=MIN(BYCOL(A1:CV100,LAMBDA(x,IFNA(XMATCH(MAX(A1:CV100),x),""))))
 列番号:=MIN(BYROW(A1:CV100,LAMBDA(x,IFNA(XMATCH(MAX(A1:CV100),x),""))))
 でも。

 なお、列番号も数字で出力するようにしている。
 また、検索値が複数存在する場合は、最も上の行・列の番号が返る。

(行きずり) 2025/03/05(水) 15:33:36


参考です。
最大値の重複はないものとします。
     |[A]   |[B]|[C]|[D]
 [1] |    39| 64| 32| 62
 [2] |    36| 55| 74| 21
 [3] |     8| 65| 31| 28
 [4] |    88| 78| 32| 35
 [5] |    64| 99| 36| 55
 [6] |    13| 84| 39| 77
 [7] |    17| 43| 92|  0
 [8] |    87|100| 59| 32
 [9] |    35| 89| 21| 36
 [10]|    79| 95| 74| 88
 [11]|      |   |   |   
 [12]|行番号|  8|   |   
 [13]|列番号|B  |   |   
 B12=SUMPRODUCT((A1:E10=MAX(A1:E10))*ROW(A1:A10))
 B13=CHAR(64+SUMPRODUCT((A1:E10=MAX(A1:E10))*COLUMN(A1:E1)))

(IT) 2025/03/05(水) 16:02:13


 =LET(list,A1:CV100,m,MAX(list),DROP(REDUCE(,list,LAMBDA(p,c,IF(c=m,VSTACK(p,TEXTSPLIT(CELL("address",c),"$")),p))),1,1))
 ではどうでしょう
(´・ω・`) 2025/03/05(水) 16:28:47

皆さま、回答をありがとうございます。

一つの問題に、こんなに様々な回答があるのですね。

最初に、ご回答いただいた
(ねむねむ)様のやり方でやってみました。
AGGREGATE関数の意味は、よくわかりませんが
うまくいきました。

ありがとうございます。
(トマト&ブドウパン) 2025/03/05(水) 19:25:01


コメント返信:

[ 一覧(最新更新順) ]


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