• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルで最新の最小値をだしたいのですが、、、)

エクセルで最新の最小値を出す方法とは?

このQ&Aのポイント
  • エクセルで最新の最小値を求める方法を教えてください。
  • MIN関数を使って最小値を求めることはできるのですが、最小値が同じ値が複数ある場合に一番新しいデータ入力日の最小値を表示する方法がわかりません。
  • OR関数などを使って式を組んでみましたが、うまく値が表示されません。データ入力日と数値データが入っている範囲が異なることが原因かもしれません。どなたか教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

最小値の値そのものは,最新も最近もなくて「10」です。 A2: =MIN(C2:Z2) 実際には =IF(COUNT(C2:Z2),MIN(C2:Z2),"") と記入しておきます。 その10の値が複数回出てくるときに,一番最近の日付が欲しいので B2: =IF(A2="","",MAX(IF(C2:Z2=A2,C$1:Z$1))) と記入してコントロールキーとシフトキーを押しながらEnterで入力します。

lilosthitch
質問者

お礼

回答ありがとうございました。 教えていただいた数式を使ったら うまくいきました。 ありがとうございました。

すると、全ての回答が全文表示されます。

その他の回答 (3)

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.4

 もし、1行目の日付が順序正しく、必ず右へ行くに従って新しい日付となっていて、且つ、右端の列の列番号がAMH列(1022番目の列)以下である場合には、以下の方法で、作業列を使わず、完全に自動的に、最小値となっている中で最も新しい日付を求める事が出来ます。(Crtl+Shift+Enterキー操作も不要です)  まず、B2セルに次の数式を入力して下さい。 =IF(ISNUMBER(SQRT(MATCH(9^9,$1:$1)-COLUMN()-1)),IF(OR(MATCH(9^9,$1:$1)>1022,COUNT($C2:INDEX(2:2,MATCH(9^9,$1:$1)))=0),"",MIN($C2:INDEX(2:2,MATCH(9^9,$1:$1)))),"")  次に、A2セルに次の数式を入力して下さい。 =IF($B2="","",INDEX($1:$1,INT(LOG(SUMPRODUCT(2^COLUMN($C$1:INDEX($1:$1,MATCH(9^9,$1:$1)))*($C2:INDEX(2:2,MATCH(9^9,$1:$1))=MIN($C2:INDEX(2:2,MATCH(9^9,$1:$1))))),2))))  そして、A2~B2の範囲をコピーして、同じ列の3行目以下に貼り付けて下さい。  以上です。

lilosthitch
質問者

お礼

回答ありがとうございます。 はじめてISNUMBERやSQRTの関数をみました。 すごくお詳しいのですね。 配列数式を使わなくてもすむ方法もあるのですね。 勉強になりました。ありがとうございました。

すると、全ての回答が全文表示されます。
noname#204879
noname#204879
回答No.3

添付図参照 A2: {=MIN(IF(C2:IV2<>"",C2:IV2))} B2: {=INDEX(C$1:IV$1,MAX((C2:IV2=A2)*COLUMN(C2:IV2))-2)} 【注】何れも配列数式です。

lilosthitch
質問者

お礼

回答ありがとうございます。 配列数式で教えていただいたもので、うまく表示できました。 ありがとうございました。 図ものせていただいてありがとうございました。

すると、全ての回答が全文表示されます。
  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

こういうことを考えるとき、日付は日付シリアル値で入れておくべきなのだ。 日付を文字列で入れていると複雑になる。 それだと1900年1月1日からの実際の経過日数なので、一番新しい日付はデータの中の最大値になるのだ。 ーー >一番新しいデータ入力日の最小値を表示したいのでずが、 この表現おかしくないですか。どの日であれ10に違いなかろ。 >新しいデータ入力日の最小値を表示したいのでずが、 これをそのままの意味に取るなら3月11日に複数データが無いと、話しにならないがどうですか。例の挙げ方が悪い。 >行ごとの最小値をA列に表示させたいと思っています これは行の最小値をMIN関数で出せるでしょう。 >B列に、最小値のデータ入力日も表示させたいと 表現が舌たらず。 B列に、最小値のデータ入力日も表示させたい、最小値と同じ日が複数あれば、最近の日付を出したい。 と書くべきでしょう。 ーーーー これは2条件の抜き出し問題的なんだが、1つの関数でこれを出すのは難しい。 配列数式の領分になる。 例データ A1:G4 最小値 最小値最近日付 2月10日 3月10日 3月11日 3月12日 3月13日 10 2011/3/13 10 15 10 14 10 12 2011/3/10 20 12 30 16 26 8 2011/3/11 12 8 8 12 10 A2の式  =MIN(C2:G2) 下方向に式を複写 ーー B2の式 =INDEX($C1:$G$1,0,MAX(IF(C2:G2=$A2,COLUMN(C2:G2)-2,0))) と入れて、SHIFT、CTRL,ENTERの3つのキーを同時押しする。 表示形式は日付の書式にしておくこと。 下方向に式を複写 結果 上記B列の通り

lilosthitch
質問者

お礼

回答ありがとうございました。 質問の説明がわかりずらくすみませんでした。 質問の仕方も指摘いただき勉強になります。 ありがとうございました。 教えていただいたものを使ってみたらうまくできました。 ありがとうございました。 表示形式は日付の書式にしておくことなど、 注意点まで教えていただきありがとうございました。

すると、全ての回答が全文表示されます。

関連するQ&A

専門家に質問してみよう