※ ChatGPTを利用し、要約された質問です(原文:エクセル又はOpenOfficeで条件付き最小値を)
エクセル又はOpenOfficeで条件付き最小値を抽出する方法
このQ&Aのポイント
エクセル又はOpenOffice.orgで条件付きの最小値を抽出する方法について質問があります。
質問者はOpenOffice.orgのCalcを使用しており、条件付き最小値を求める数式を調べて試していますがうまくいきません。
最大所要時間は「=SUMPRODUCT(MAX((B4:B100>=0)*A4:A100))」で求められましたが、最小所要時間を求める方法についてアドバイスを求めています。
エクセル又はOpenOfficeで条件付き最小値を
エクセル又はOpenOffice.orgで条件付きの最小値を抽出する数式
当方OpenOffice.orgのCalc使用です。
関数も勉強し始めたばかりで、まだまだ理解しきれていませんが、宜しくお願いいたします。
下記の条件で最小値を出す数式を色々調べては試しているのですが、中々うまくいかないので質問させて下さい。
A(所要時間) B
1 01:00:00 04.5
2 00:30:00 20.5
3 02:10:00 -10.0
4 01:40:00 07.5
5 00:25:00 -05.0
6 00:45:00 13.5
7 00:15:00 -03.5
8 01:05:00 18.0
上記表からB列の値がプラス(つまり0以上)の中の最大所要時間(この場合01:40:00)と最小所要時間(00:30:00)、
B列の値がマイナス(0以下)の中の最大所要時間(02:10:00)と最小所要時間(00:15:00)をそれぞれ求めたいと思っています。
最大所要時間は「=SUMPRODUCT(MAX((B4:B100>=0)*A4:A100))」で求められましたが、MINではダメでした。
SMALLを使うのかもと思い調べてみましたが、だんだん混乱してしまって・・・
似たような質問はたくさん見つかりましたが、配列数式を使用するものばかりでした。
Calcは配列数式に制限があり、IFやINDEXが含まれる配列数式は使えないらしく、苦労しています。
DMIN関数も考えましたが、条件を割り当てるために不要なセルを作成しなければならないので、避けたいと思いまして。
最小時間が求まれば完成という段階なので、できれば数式で対応したいです。
色々と制約があって申し訳ないのですが、お知恵をお貸しいただけると助かります。
よろしくお願いいたします。
お礼
早々にご回答いただきありがとうございます。 こちらの数式で無事に解決いたしました。 別シートを作成しての検証作業中に、今までちゃんと計算してくれていたものが急にエラーになったりしてちょっと検証に手間取っておりました。 Calcの調子が悪かったのか、私のやり方がまずかったのかわかりませんが、とにかく最終的にはうまくいきました。 本当に助かりました。 ありがとうございました。
補足
補足ではありませんが、一言追加させていただきます。 皆さんをベストアンサーにしたいのですが、今回はsige1701様の「=SUMPRODUCT(MIN((B1:B100>=0)*1+A1:A100))」という数式が一番わかりやすかったので選ばせていただきました。