- ベストアンサー
エクセルで最小値から0を除く方法
早速ですが、エクセル入力したデータから最大値と最小値を求めようとしています。 最大値は=MAX(A1:A100)で求められるのですが、最小値には0が入っていると=MIN(A1*A100)では0となってしまいます。 0以外で最小値を求めたいのですが、どのように設定すればよいでしょうか? どなたかご教授いただけると助かります。
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
配列関数を使用することになります。 =MIN(IF(A1:A100=0,"",A1:A100)) と入れて、 Ctrl+Shift+Enter で決定します。 式が{}でくくられますが、 中身のIF文の通り、A1~A100のセルで0の値は 空白、それ以外はそのまま で一度計算してその中の最小値を出します。
その他の回答 (5)
- Wendy02
- ベストアンサー率57% (3570/6232)
こんばんは。 0 を、"" に置き換えて、配列確定するのが一般的だとして、それ以外としては、こう考えてみました。 =MIN(INDEX(SUBSTITUTE((A1:A100)*1,0,MAX(A1:A100))*1,,)) 別に、質問者さんが満足すればどれでもよいので、他と比較する必要はないと思いますが、チェックした要点は、以下の三つです。 ・0 がない場合。 ・マイナス値がある場合。 ・空白値がある場合。
お礼
回答ありがとうございました。 条件付き書式での設定で、より多くのセルに入力する必要があったため今回は=MIN(IF(A1:A100=0,"",A1:A100)を採用させていただきました。 ありがとうございました。
すでに回答が出ていますが、若干異なります。 =MIN(IF(A1:A100,A1:A100,"")) 何処が違うか分かりますか?
お礼
回答ありがとうございました。 =0を付けなくてもできるのですね。 理由は別途勉強してみます。 ありがとうございました。
- 某HN クロメート(Chromate)(@CoalTar)
- ベストアンサー率40% (705/1742)
=SMALL(A1:A100,COUNTIF(A1:A100,0)+1) でどうでしょうか?
お礼
回答ありがとうございました。 自分が持っているエクセルの知識から=MIN設定で解決しましたが、SMALLやCOUNTIFについても勉強したいと思います。 ありがとうございました。
- web2525
- ベストアンサー率42% (1219/2850)
あぅ INDEX要らなかった =MIN(IF(A1:A100=0,"",A1:A100)) これで
お礼
2回も回答いただき、ありがとうございました。 無事解決できました。
- web2525
- ベストアンサー率42% (1219/2850)
配列計算になっちゃいますが =MIN(INDEX(IF(A1:A100=0,"",A1:A100),0)) Shift+Ctrl+Enterで確定
お礼
回答ありがとうございました。 条件付き書式で設定しましたが、無事できました。 ありがとうございました。