• ベストアンサー

Excelの関数について

Excelの関数について教えてください。 C1に50、D1に30、E1に=SUM(A1:D1)、B2に=E1-SUM(A1:B1)、が入力されています。 このB2の計算式を、「もしB1:C1のどちらか片方(もしくは両方)に値が入力されているときはB2の計算式の結果が返ってくる。B1:C1のどちらも空欄のときは「#N/A」が返ってくる。0は入力有りとみなす」というようにしたいです。 IF関数にISBLANK関数を入れてみたんですが、片方に入力有りでも「#N/A」が返ってきてしまいます。 =IF(ISBLANK(B1:C1),NA(),E1-SUM(A1:B1)) ISBLANK関数じゃダメだったんでしょうか? どういうふうに変えればいいんでしょうか? すみませんがどなたか教えてください。

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

  • ベストアンサー
noname#140971
noname#140971
回答No.1

B1:C1のどちらかに値が入力されている---Len(B1&C1)>0 B1:C1のどちらも空欄である-------------Len(B1&C1)=0 よって、 =IF(Len(B1&C1)=0,Na(),E1-SUM(A1:B1))

-snow_white-
質問者

お礼

LENがありましたね!! そういえば。 たくさんのデータの中からスペースが入ってるセルを探し出すときによく使ってたはずなのに、すっかり忘れてました。 空欄→ブランク→ISBLANKって方にしか頭がいってませんでした。 どうもありがとうございました!

その他の回答 (2)

noname#140971
noname#140971
回答No.3

PS: =IF(ISBLANK(B1)*ISBLANK(C1),NA(),E1-SUM(A1:B1)) 個々に判定しないとダメみたいですね。

-snow_white-
質問者

お礼

複数の対象についてISBLANKで判定するときは、こんなふうにするんですね。 初めて知りました。 関数って基本形だけじゃなく、こういう使い方も覚えておくと他の関数でも流用できますね。 勉強になりました。 どうもありがとうございました。

回答No.2

=IF(AND(B1="",C1=""),NA(),E1-SUM(A1:B1)) でも、いいと思います。

-snow_white-
質問者

お礼

ANDをこういうふうに使えばよかったんですね。 どちらか片方→OR!! ってことでORを使ってもみてたんですが、うまくいかなかったんです。 逆転の発想ですね。また一つ勉強になりました。 どうもありがとうございました。

関連するQ&A