- ベストアンサー
エクセルの関数について教えてください
先日もコチラで質問させていただき エクセルでの表作りを1から見直しております。 さて、次のような事が出来るのか、出来ればどのような関数(数式?)を使えばいいでしょうか? ●maxとかminの関数で最大・最小値を引数にしますが、この最大・最小値を出した日付を引数にする事は出来るのでしょうか? ちなみに表はベーシックな表にしています。1番上の行に見出しを右方向に、1番左の列に下に向かって日付を 以上、よろしくお願い致します。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
> maxとかminの関数で最大・最小値を引数にしますが 違います。max関数やmin関数の引数はセル範囲で、関数の返す結果 が当該範囲内の最大値ないし最小値です。用語を間違えると話が通 じなくなるので注意。 > この最大・最小値を出した日付 match関数というのがあります。match(検査値,検索範囲,0)で、探し ている値が範囲の何番目のデータかを返します。B列の最大値が何行 目にあるかは =match(max(B:B),B:B,0) とすればいいわけです。これにindex関数やoffset関数を組み合わせ てやれば、「B列の最大値がある行のA列の値」を発見出来ますね。 =index(A:A,match(max(B:B),B:B,0),1) というわけです。
その他の回答 (2)
- imogasi
- ベストアンサー率27% (4737/17069)
>先日もコチラで質問させていただき エクセルでの表作りを1から見直しております。 質問番号も書いてないし、質問に書く必要なし。 それより、模擬実例を質問に挙げられるだけの力を磨くこと。 ーー >maxとかminの関数で最大・最小値を引数にしますが 自分で総括・解説しているが、意味不明で、理解不十分を露呈したのでは。 ーー 意味を推定して 例データA2:B8 データ 氏名 11 a 23 b 6 c 13 d 25 e 5 f 45 g の時 最大値の氏名を求める =VLOOKUP(MAX($B$2:$B$8),$B$2:$C$8,2,FALSE) (1)それには2つ以上最高点同点者があるとダメ (2)氏名が点数の右側にある などの条件がある。 (2)MATCHーINDEXを使うと解決できる。 なお上記のA列は数字ですが、日付の場合も、日付シリアル値という正整数がセルの値として入るので、同じタイプです。
単なるMAX関数やMIN関数だけではただ範囲内の最大値や最小値が返されるだけです。 MATCH関数と組み合わせて、 MATCH(MAX(B2:B10),B2:B10,0) とすると、B2~B10の何番目の値が最大値なのかが出ますから、 これを使ってINDIRECT関数やOFFSET関数等で出せるでしょう。 具体的には INDIRECT("A"&(MATCH(MAX(B2:B10),B2:B10,0)+1)) あるいは INDIRECT("A"&MATCH(MAX(B:B),B:B,0)) で如何でしょう。
お礼
ありがとうございました。 No.1のお礼にも書きましたが、本をよみながら試行錯誤しております。エクセルは奥が深いので一冊の本だけでは、網羅されていないのでネットで検索もしながらやっております。 ご回答参考にさせていただきました。
お礼
ありがとうございました。 勉強不足で混乱をあたえるような質問になっていたようで失礼します。 本を片手にシコシコとやっております。 ご回答助かります。 参考にさせていただきました。