- みんなの回答 (4)
- 専門家の回答
その他の回答 (3)
- imogasi
- ベストアンサー率27% (4737/17069)
回答は出ているので解説だけになるが 例データ A2:B5 a 50 b 60 c 30 d 60 考え方 (1)B列の最高値を求める 例えば、C6セルに =MAX(B2:B5) で60 (2)60の行をB列で求める。2行(2個所)にあるが MATCH関数(やVLOOKUP関数)は、「存在する最初の行=一番上の行」を求める(これしか求められない) 例えばD6に =MATCH(C6,$B$1:$B$5,0) で3(=3行目の意味) (3)3行目のA列の値を求める =INDEX($A$1:$A$5,D6) でb 以上が思考過程であるが、 C6、D6の式を1つにまとめて =INDEX($A$1:$A$5,MATCH(MAX(B2:B5),$B$1:$B$5,0)) ーー 参考 自分で関数を作ると Function maxu(a) m = -1: r = a(1).Row For Each cl In a If cl > m Then '>=にすると、最下行の方を取る m = cl r = cl.Row End If Next maxu = r End Function セルに =INDEX($F$1:$F$10,maxu(G1:G10)) のような使い方になる。
- keithin
- ベストアンサー率66% (5278/7941)
1行目は「名前」や「点数」などのタイトル行で,データが入るのは2行目からです。 手順: 必ず事前に一度C2:C5のセル結合を解除する C2に =IF(COUNT(B:B),INDEX(A:A,MIN(IF(B2:B5=MIN(B2:B5),ROW(B2:B5))))) と記入して,かならずコントロールキーとシフトキーを押しながらEnterして入力する C2:C5をセル結合する。
- hallo-2007
- ベストアンサー率41% (888/2115)
手順を説明しますと A列に名前、B列に点数だとして 一番大きい点数は =MAX(B:B) で求められます。 一番多きい点数がある列の番号は =MATCH(B:B,MAX(B:B),FALSE) で求められます。 A列で、市場いい大きい点数の文字といえばINDEX関数を使いますが =INDEX(A:A,MATCH(MAX(B:B),B:B,FALSE)) という形で求められます。 一度勉強してみてください。 MAX関数、MATCH関数、INDEX関数の3つ組み合わせです。