• 締切済み

エクセル、 0の計算

エクセル (A+B)×D の計算 別のシートから入れたB値に0が多いため、IF関数を使って0を表示しない様にしたら、解がでずVALUE!になってしまいました。 B欄にどんな関数を入れたら、0を表示せず答えが導けますか。

みんなの回答

noname#204879
noname#204879
回答No.11

[No.9]へのコメント、 》 D1セルが ""だとA1とB1合計が出てしまうのでイマイチかも… 仰るとおりです。ご指摘、ありがとうございました。 私が提示した式を活かすなら =PRODUCT(SUM(A1,B1),D1)*(D1<>"") とでもしますか。(苦肉の策?)

unosachi
質問者

お礼

ありがとうございます、 それにしても皆さんの知識はスゴイです

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.10

=IF(ISNUMBER(1/(「(A+B)*Dの数式」)),「(A+B)*Dの数式」,"") とされると良いと思います。

unosachi
質問者

お礼

ありがとうございます。 kagakusuykiなんてお名前素敵ですね。 これでやってみようと思います。 知らない関数がたくさん出てきてこれからに生かせそうです

回答No.9

(ルール違反かもしれませんが) mike_gさんへ >=PRODUCT(SUM(A1,B1),D1) D1セルが ""だとA1とB1合計が出てしまうのでイマイチかもしれません。 指摘だけではなんなので回答も 数字の数値化を逆に利用して =((0&A1)+(0&B1))*(0&D1) としてもいいかも

unosachi
質問者

お礼

ありがとうございます。 みなさんのお知恵にはびっくりです

noname#204879
noname#204879
回答No.8

   =(A1+B1)*D1      ↓ =PRODUCT(SUM(A1,B1),D1)

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.7

B列の式を書き換えただけならそちらはそのままで,今の#VALUEになった方の式を =SUM(A1:B1)*D1 それとも =SUM(A1,C1)*D1 のようにすればOKです。 D列の式も同じように書き換えちゃいましたと言うときは,応用して =SUM(A1:B1)*SUM(D1) などのようにして出来ます。

unosachi
質問者

お礼

ありがとうございます。 わかりやすい子規だと思いました。

  • misawajp
  • ベストアンサー率24% (918/3743)
回答No.6

難しく考えすぎ B欄の書式を # とすれば 0は表示されません(0を表示したくないセルの書式を # )

unosachi
質問者

お礼

そのような式の表し方もあるの得ですね、ありがとうございます

  • asciiz
  • ベストアンサー率70% (6809/9681)
回答No.5

if文で "" を表示してしまうと、それは文字列となってしまいます。 そして、文字列を計算しようとする→VALUE! となってしまいます。 計算する方でまたif文を使い、""はゼロとする、としてもいいですが… ここは、B値のセルの書式設定で、「G/標準; -G/標準; ""」などとしてみましょうか。 正の値の時→「G/標準」 が適用になり、10 や 20.5 などの数値がそのまま表示されます。 負の値の時→「-G/標準」 が適用になり、-20 や -15.3 などの数値がそのまま表示されます。 ゼロの時→「""」 が適用になり、見えなくなります。 見えなくなっても、そのセルには「数値 0」が入っているので、計算に使用できます。

unosachi
質問者

お礼

わたしは本当に初心者だと思いました。 良いことを教えてくださってありがとうございます

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.4

NO1です。 エクセル2003以下の数式に誤植がありましたので訂正します。 =IF(ISERR(計算式),"",計算式)

unosachi
質問者

お礼

ありがとうございます、個々のも知らない関数が、それにしてもエクセルの世界は広いですね。

  • ppyama
  • ベストアンサー率12% (48/399)
回答No.3

>別のシートから入れたB値に0が多いため =(A2+Sheet1!B2)*D2  で求めているならB2に0が入ろうが気にはなりませんよね? 別シートで入れているB値(仮にB列にあるとして) の見栄えが良くないということでもないですよね?

unosachi
質問者

お礼

ありがとうございます。

  • Kan164
  • ベストアンサー率40% (2/5)
回答No.2

IF関数を使って、B値の0を表示しない  =if(B="",A×D,(A+B)×D)じゃダメですか?

unosachi
質問者

お礼

やり方が悪かったのか上手くいきませんでした。また試してみますありがとうございます

関連するQ&A