- ベストアンサー
EXCEL 関数ROUNDについて
お世話になります。 ROUNDを使用して計算していますが、空白のデータがあると答えが 0 になります。 空白のデータは無視して、計算が出来る方法はないでしょうか? よろしくお願いします。 例 A1 B1 C1 D1 1.85 空欄 2.11 0 D1のセルに =Round(A1*B1*C1,1) と入力 した時に 3.9と表示させたい。 うまく説明できないで申し訳ありません。
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
こんばんは。 読み違えているのかもしれませんが、 =Round(A1*B1*C1,1) ということで、空白セルを無視するのでしたら、以下のようにすればよいです。ただし、当然ですが、セルに「0」は、入れないことです。 =ROUND(PRODUCT(A1:C1),1) ただし、0は、入れないでください。
その他の回答 (6)
- CaveatEmptor
- ベストアンサー率26% (126/470)
ほかの方の回答でいいと思いますが、roundの中のA1*B1*C1がA1+B1+C1のように他の場合も使えますということで、以下の方法はどうでしょうか? =IF(ISBLANK(A1),ROUND(B1*C1,1),IF(ISBLANK(B1),ROUND(A1*C1,1),ROUND(A1*B1,1)))
=ROUND((A1+(A1=0))*(B1+(B1=0))*(C1+(C1=0)),1) でも・・・。
- NIWAKA_0
- ベストアンサー率28% (508/1790)
かけ算、ですか・・・。 加減算ならそのままでも言い訳ですが・・・。 別に計算用のダミーセルを作り、 例えばA1のダミーなら =IF(A1="",1,A1)というようにして、 それを計算させるようにしてはどうでしょう。 この式は、「もしA1が空白ならば1、それ以外ならA1」という意味です。
- apple_bananana
- ベストアンサー率57% (4/7)
if関数を使えば出来ます。 =ROUND(IF(A1="",1,A1)*IF(B1="",1,B1)*IF(C1="",1,C1),1) A1、B1、C1それぞれが空白だったら1を掛けて、それ以外は入力している数値を掛けなさい・・・という数式です。
- okg00
- ベストアンサー率39% (1322/3338)
=ROUND((IF(A1<>" ",A1,1))*(IF(B1<>" ",B1,1))*(IF(C1<>" ",C1,1)),1)
- pipipi523
- ベストアンサー率40% (148/365)
ちょっとイマイチな方法ですが・・・ =ROUND(IF(ISNUMBER(A1),A1,1)*IF(ISNUMBER(B1),B1,1)*IF(ISNUMBER(C1),C1,1),1)
お礼
回答ありがとうございます。 式の入力が簡単で非常に助かりました。 大変ありがとうございました。 他に回答された方にも、お礼申し上げます。