重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

EXCELのIF関数で「A1からA5が空白だったならば、空白を、空白じゃなかったらA1からA5の合計を求める」といったような式の設定はできますか?
「A1からA5の全てにデータが入れば合計を求める」または「A1からA5のどれかにデータが入れば合計を求める」というやり方はどうでしょう?

1つ目のように、範囲を論理式(条件)に用いることはできるのでしょうか?

A 回答 (7件)

一例です。


A1:A5が全て空白の場合は空白、どれかにデータがあれば合計します。
=IF(SUM(A1:A5),SUM(A1:A5),"")
    • good
    • 0
この回答へのお礼

ほんとだ!
できますね!
この論理式に当たる部分の「SUM(A1:A5)」はどう解釈したらいいのですか?「SUM(A1:A5)」はA1からA5の合計の結果が出るならばというような意味でしょうか?

お礼日時:2009/04/24 19:10

#5です。


>>10を式にしたければ、>=ROW(A10)-ROW(A1)+1
が、ちょっとわからないのですが・・・
(1)式の意味か
(2)必要性か
多分(2)についてだろうね。
コンピュタやその言語などでは、なるべく一般性を持たせたいわけ。
人力で・頭で計算させたくないわけ。それでA1:A10ならセル数は10は即座にわかるが、A7:A231などだと頭で231-7+1の計算をしなければならない。それをさせないために、スタートとエンドのセル番地を指定すれば、セル数を計算して、本件の処理や計算が出来るよう、こういうことも出来るということ。
ROW(A10)-ROW(A1)+1
ーーー
それよりも
>A1からA5が空白だったならば、空白を、空白じゃなかったら・・
は注意して書かないと、意味が2通りに取られるように思うが。
いつも
(1)Allを指すのか
(2)1つでもあれば、を指すのか、質問者はわかっても、
コンピュターの絡みの文章は(無縁かもしれないが、特にプログラム言語では)、神経質なぐらい注記したほうが良い。
また、文章を読む場合は、気をつけて読んだほうが良い。
このコーナーでも、アバウトな質問表現が多い。
    • good
    • 0
この回答へのお礼

いろいろありがとうございました。

質問の仕方も、もう少し整理するようにします(^_^;)
わかりにくい質問に丁寧にお答えくださってありがとうございました!
勉強になりました!

お礼日時:2009/04/27 13:27

> 「A1からA5が空白だったならば、空白を、空白じゃなかったらA1からA5の合計を求める」式と


>「A1からA5のどれかにデータが入れば合計を求める 」式は同じということでしょうか?

同じことじゃないんですか?
A1からA5がすべて空白だったならば空白を、そうでなければA1からA5の合計を求めるということは、A1からA5のどれかにデータが入れば合計を求めるということを別の言葉で言っているだけですよね?
    • good
    • 0
この回答へのお礼

そうですね(^_^;)
確かに・・・。
ありがとうございました。

お礼日時:2009/04/25 08:02

A1:A10の「数字!」のセル数はCOUNT(A1:A10)で求められる。

だから
範囲全セルに数字が入ってなければ、空白、10セルそろったら合計するなら
=IF(COUNTA(A1:A10)=10,SUM(A1:A10),"")
で良いでしょう。
10を式にしたければ、
=ROW(A10)-ROW(A1)+1
    • good
    • 0
この回答へのお礼

ありがとうございました!

>10を式にしたければ、
>=ROW(A10)-ROW(A1)+1
が、ちょっとわからないのですが・・・

すみません<m(__)m>

お礼日時:2009/04/25 08:04

いや、なんか複雑な関数を使わなくても、AND/ORとIFだけで済みますし。



=IF(AND(A1="",A2="",A3="",A4="",A5=""),"",A1+A2+A3+A4+A5)

こっちのほうが後で分かりやすいんじゃないかと。
    • good
    • 0
この回答へのお礼

確かにわかりやすいかもしれません。
ただ実際に使いたいセル範囲はもっと大きいので、式が長くなりすぎてしまうんですね(^_^;)
一番単純な理解しやすい方法ではあると思います。
ありがとうございました。

お礼日時:2009/04/24 19:14

A1からA5が空白だったならば、空白を、空白じゃなかったらA1からA5の合計を求める


=IF(COUNTBLANK(A1:A5)=5,"",SUM(A1:A5))

A1からA5の全てにデータが入れば合計を求める
=IF(COUNTBLANK(A1:A5)=0,SUM(A1:A5),"")

A1からA5のどれかにデータが入れば合計を求める
=IF(COUNTBLANK(A1:A5)=5,"",SUM(A1:A5))

この回答への補足

回答いただいた方法でやってみました。

今回の場合このA1からA5には
先にIF関数を設定してあったんです。
今回は質問するにあたり、A1からA5を例で書きましたが
このA1からA5にはそれぞれ「B列の対応する行が空白だったなら
空白を、空白でなければ掛け算をする」ようなIF関数が入っています。
そうした場合、COUNTAやCOUNTBLANKだと
関数が入っているから「空白」とみなされず
「0」が表示されてしまいます。

このような場合はどういう対処方法がありますか?
アドバイスいただけると幸いです<m(__)m>

補足日時:2009/04/26 11:03
    • good
    • 0
この回答へのお礼

ありがとうございます!

「A1からA5が空白だったならば、空白を、空白じゃなかったらA1からA5の合計を求める」式と
「A1からA5のどれかにデータが入れば合計を求める 」式は同じということでしょうか?

お礼日時:2009/04/24 19:13

COUNTAという関数は指定されたセル範囲内にデータの入ったセルが何個あるかを調べます。


逆にブランクを数えるから、COUNTBLANKという関数もあります。
これらを利用します。

=IF(COUNTA(A1:A5)=0,"",SUM(A1:A5))
=IF(COUNTBLANK(A1:A5)=5,"",SUM(A1:A5))
上記の場合、A1からA5がすべて空白なら空白、1つでも入っていれば合計が出ます。

A1からA5まで1つでも空白があったら空白ならこんな感じで
=IF(COUNTA(A1:A5)<>5,"",SUM(A1:A5))
=IF(COUNTBLANK(A1:A5)<>0,"",SUM(A1:A5))
    • good
    • 0
この回答へのお礼

ありがとうございます!
参考になりました!

お礼日時:2009/04/24 19:11

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!