• ベストアンサー

エクセルで最小値から0を除く方法

早速ですが、エクセル入力したデータから最大値と最小値を求めようとしています。 最大値は=MAX(A1:A100)で求められるのですが、最小値には0が入っていると=MIN(A1*A100)では0となってしまいます。 0以外で最小値を求めたいのですが、どのように設定すればよいでしょうか? どなたかご教授いただけると助かります。

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

  • ベストアンサー
  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.3

配列関数を使用することになります。 =MIN(IF(A1:A100=0,"",A1:A100)) と入れて、 Ctrl+Shift+Enter で決定します。 式が{}でくくられますが、 中身のIF文の通り、A1~A100のセルで0の値は 空白、それ以外はそのまま で一度計算してその中の最小値を出します。

tsu_chan
質問者

お礼

回答ありがとうございました。 条件付き書式で設定しましたが、無事できました。 ありがとうございました。

その他の回答 (5)

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.6

こんばんは。 0 を、"" に置き換えて、配列確定するのが一般的だとして、それ以外としては、こう考えてみました。 =MIN(INDEX(SUBSTITUTE((A1:A100)*1,0,MAX(A1:A100))*1,,)) 別に、質問者さんが満足すればどれでもよいので、他と比較する必要はないと思いますが、チェックした要点は、以下の三つです。 ・0 がない場合。 ・マイナス値がある場合。 ・空白値がある場合。

tsu_chan
質問者

お礼

回答ありがとうございました。 条件付き書式での設定で、より多くのセルに入力する必要があったため今回は=MIN(IF(A1:A100=0,"",A1:A100)を採用させていただきました。 ありがとうございました。

noname#204879
noname#204879
回答No.5

すでに回答が出ていますが、若干異なります。 =MIN(IF(A1:A100,A1:A100,"")) 何処が違うか分かりますか?

tsu_chan
質問者

お礼

回答ありがとうございました。 =0を付けなくてもできるのですね。 理由は別途勉強してみます。 ありがとうございました。

回答No.4

=SMALL(A1:A100,COUNTIF(A1:A100,0)+1) でどうでしょうか?

tsu_chan
質問者

お礼

回答ありがとうございました。 自分が持っているエクセルの知識から=MIN設定で解決しましたが、SMALLやCOUNTIFについても勉強したいと思います。 ありがとうございました。

  • web2525
  • ベストアンサー率42% (1219/2850)
回答No.2

あぅ INDEX要らなかった =MIN(IF(A1:A100=0,"",A1:A100)) これで

tsu_chan
質問者

お礼

2回も回答いただき、ありがとうございました。 無事解決できました。

  • web2525
  • ベストアンサー率42% (1219/2850)
回答No.1

配列計算になっちゃいますが =MIN(INDEX(IF(A1:A100=0,"",A1:A100),0)) Shift+Ctrl+Enterで確定

関連するQ&A