- 締切済み
エクセル、 0の計算
エクセル (A+B)×D の計算 別のシートから入れたB値に0が多いため、IF関数を使って0を表示しない様にしたら、解がでずVALUE!になってしまいました。 B欄にどんな関数を入れたら、0を表示せず答えが導けますか。
- みんなの回答 (11)
- 専門家の回答
みんなの回答
[No.9]へのコメント、 》 D1セルが ""だとA1とB1合計が出てしまうのでイマイチかも… 仰るとおりです。ご指摘、ありがとうございました。 私が提示した式を活かすなら =PRODUCT(SUM(A1,B1),D1)*(D1<>"") とでもしますか。(苦肉の策?)
- kagakusuki
- ベストアンサー率51% (2610/5101)
=IF(ISNUMBER(1/(「(A+B)*Dの数式」)),「(A+B)*Dの数式」,"") とされると良いと思います。
お礼
ありがとうございます。 kagakusuykiなんてお名前素敵ですね。 これでやってみようと思います。 知らない関数がたくさん出てきてこれからに生かせそうです
- 某HN クロメート(Chromate)(@CoalTar)
- ベストアンサー率40% (705/1742)
(ルール違反かもしれませんが) mike_gさんへ >=PRODUCT(SUM(A1,B1),D1) D1セルが ""だとA1とB1合計が出てしまうのでイマイチかもしれません。 指摘だけではなんなので回答も 数字の数値化を逆に利用して =((0&A1)+(0&B1))*(0&D1) としてもいいかも
お礼
ありがとうございます。 みなさんのお知恵にはびっくりです
=(A1+B1)*D1 ↓ =PRODUCT(SUM(A1,B1),D1)
- keithin
- ベストアンサー率66% (5278/7941)
B列の式を書き換えただけならそちらはそのままで,今の#VALUEになった方の式を =SUM(A1:B1)*D1 それとも =SUM(A1,C1)*D1 のようにすればOKです。 D列の式も同じように書き換えちゃいましたと言うときは,応用して =SUM(A1:B1)*SUM(D1) などのようにして出来ます。
お礼
ありがとうございます。 わかりやすい子規だと思いました。
- misawajp
- ベストアンサー率24% (918/3743)
難しく考えすぎ B欄の書式を # とすれば 0は表示されません(0を表示したくないセルの書式を # )
お礼
そのような式の表し方もあるの得ですね、ありがとうございます
- asciiz
- ベストアンサー率70% (6809/9681)
if文で "" を表示してしまうと、それは文字列となってしまいます。 そして、文字列を計算しようとする→VALUE! となってしまいます。 計算する方でまたif文を使い、""はゼロとする、としてもいいですが… ここは、B値のセルの書式設定で、「G/標準; -G/標準; ""」などとしてみましょうか。 正の値の時→「G/標準」 が適用になり、10 や 20.5 などの数値がそのまま表示されます。 負の値の時→「-G/標準」 が適用になり、-20 や -15.3 などの数値がそのまま表示されます。 ゼロの時→「""」 が適用になり、見えなくなります。 見えなくなっても、そのセルには「数値 0」が入っているので、計算に使用できます。
お礼
わたしは本当に初心者だと思いました。 良いことを教えてくださってありがとうございます
- mu2011
- ベストアンサー率38% (1910/4994)
NO1です。 エクセル2003以下の数式に誤植がありましたので訂正します。 =IF(ISERR(計算式),"",計算式)
お礼
ありがとうございます、個々のも知らない関数が、それにしてもエクセルの世界は広いですね。
- ppyama
- ベストアンサー率12% (48/399)
>別のシートから入れたB値に0が多いため =(A2+Sheet1!B2)*D2 で求めているならB2に0が入ろうが気にはなりませんよね? 別シートで入れているB値(仮にB列にあるとして) の見栄えが良くないということでもないですよね?
お礼
ありがとうございます。
- Kan164
- ベストアンサー率40% (2/5)
IF関数を使って、B値の0を表示しない =if(B="",A×D,(A+B)×D)じゃダメですか?
お礼
やり方が悪かったのか上手くいきませんでした。また試してみますありがとうございます
- 1
- 2
お礼
ありがとうございます、 それにしても皆さんの知識はスゴイです