アプリ版:「スタンプのみでお礼する」機能のリリースについて

【エクセル2013】 「今日以降の最小値を求めたい」

行内に複数の日付があります。
日付は右に向かって値が大きくなります。
その日付の中で、「今日以降の最小値はいつか?」を求めたいです。

例えば、「今日以降で会議が予定されている直近の日付はいつ?」というものがあるとして…。
A2〜D2にそれぞれ4/22.4/28.4/30.5/9と入力されています。
最小値を表示するセルをA3にします。
「今日」は4/24なので、4/28が求められればいいのですが、「今日」は可変する値なので、4/29の時点で4/30を求められるようにしたいです。

よろしくお願いします。

A 回答 (5件)

この下の式を A3にいれたらどうなりますか。


=MIN(OFFSET(B2:ZZ2,0,MATCH(TODAY(),A2:ZZ2),34))
    • good
    • 0

A3: =MIN(IF(A2:D2>=TODAY(),A2:D2,""))


【お断わり】上式は必ず配列(CSE)数式として入力のこと
    • good
    • 0

わたしの勘違いだったら申し訳ないのですが、No.1さんの数式だと今日が4/22より前の場合、希望通りの日が返ってこないような気がします。


新しめのExcelなら、迷わず、MINIFS関数を使うとこですが、2013だと使えませんよね?
仕方ないので、こんな感じでイケませんか?

=OFFSET(A2,0,COUNTIF(2:2,"<="&TODAY()))

「右に向かって値が大きくなる」が大前提なので、これが満たされていないと正しい答えが返ってきませんが・・・。
    • good
    • 0

No.3さんの数式は


「右に向かって値が大きくなる」が大前提(ご質問者もこの前提でよいとおっしゃっていますが)
No.2さんの数式は
上式は必ず配列(CSE)数式として入力
No.1さんの数式は
今日の日付によっては結果が正しくない

ということのようですので、ご質問者が述べた前提もありますが、各数式とも制約条件があるようです。

そこで、
「右に向かって値が大きくなる」必要はなく、配列(CSE)数式として入力する必要もない数式で、条件に合致する日がない場合「該当なし」を返す数式を考えてみました。A3に

=IFERROR(AGGREGATE(15,6,INDEX(A2:D2/(A2:D2>=TODAY()),),1),"該当なし")

という数式を記述するという方法はどうでしょう。

ただし、4/22.4/28.4/30.5/9は「m/d」という表示形式ですが、入力ルールは年号まで含め「2021/4/22」などと入力するルールとします。
そうでないと、年末年始で年号変わりをまたぐと、正しい結果にならない可能性が生じるからです。
    • good
    • 0
この回答へのお礼

助かりました。ありがとうございます。
今回は該当しない場合にも配慮してくださったgoomaniaさんにBAを送ります。
またよろしくお願いいたします。

お礼日時:2021/04/27 10:26

No.1のを つぎのようにしたら、



=MIN(OFFSET(B2:ZZ2,0,MATCH(TODAY(),A2:ZZ2,1),34))
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!