• ベストアンサー

IF関数について

=IF(A1="","",B1+C1+D1) という式があります。 B1、C1、D1に「込」という文字が入った時は「0」とする答えを出したいです。 「込」は、B~Dどこにでも入る可能性がり、またB1もC1も「込」の場合もあります。 あまり複雑にならない式希望です。 宜しくお願い申し上げます。

noname#207306
noname#207306

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

  • ベストアンサー
  • bunjii
  • ベストアンサー率43% (3589/8248)
回答No.4

Q =IF(A1="","",B1+C1+D1) B1、C1、D1に「込」という文字が入った時は「0」とする答えを出したいです。 A B列、C列、D列の値に1つでも文字列があるとエラーになります。 文字列が有ってもエラーにならない加算はSUM関数です。 =IF(A1="","",SUM(B1:D1) B1、C1、D1の何れかに"込"と言う文字が含まれるときIF関数の戻り値を0にするのであれば別の数式になります。 =IF(A1="","",IF(COUNTIF(B1:D1,"*込*"),0,SUM(B1:D1)))

その他の回答 (4)

回答No.5

込って文字は、文字列の一部で出てくるのか、セル自体の値として出るのかで、考え方が変わるかと。 セルの値で出るなら、countifで、込が入っているセル数を数えてしまい、この値が1以上なら、ゼロを表示させればよいかと。

  • mshr1962
  • ベストアンサー率39% (7418/18948)
回答No.3

EXCEL2007以降のバージョンなら =IF(A1="","",IFERROR(B1+C1+D1,0)) EXCEL2003以前なら =IF(A1="","",IF(COUNTIF(B1:D1,"*込*"),0,SUM(B1:D1))

  • chie65535
  • ベストアンサー率43% (8525/19376)
回答No.2

=ISERROR(FIND("込",B1 & C1 & D1),IF(A1="","",B1 & C1 & D1),0) 蛇足ですが、B1、C1、D1を文字列として連結したいなら「+」ではなく「&」を使いましょう。 「+」を使うと、B1 、C1 、D1に「1」、「30」、「円(税込)」というデータが入って居る場合に「130円(税込)」ではなく「31円(税込)」のように、数値に見える物同士が「数値として足し算」されてしまう危険性があります。

  • aokiii
  • ベストアンサー率41% (63/151)
回答No.1

>「込」という文字が入った時は「0」とする 「0」とするのは「=IF(A1="","",B1+C1+D1)」の結果でいいんですよね? 入力されるのは「込」のみですか。「込み」とか「○○込」にはならないんですね。? =IF(OR(B1="込",C1="込",D1="込"),0,IF(A1="","",B1+C1+D1)) でできます。 「0」とするのをB1やC1やD1 の各値の場合や入力されるのが「○○込」というような場合は変わってきます。

関連するQ&A

  • IF関数について

    エクセル2013使用です IF関数について教えて下さい A1が空欄だった場合はB1×B2の答えを A1に文字が入っていた場合はC1×C2の答えを D1に表示させたい場合の数式を教えて下さい お願い致します

  • IF関数でしょうか? 分からないので教えて下さい。

    IF関数でしょうか? 分からないので教えて下さい。 A1のセルにLの文字が入っている場合は(C1-B1)*D1として、A1のセルにSの文字が入って いる場合は(B1-C1)*D1します。答えは必ず小数点付きになりまして、且つ小数点以下が2桁だったり3桁だったりランダムになります。その少数点を外して整数とする。 これを一つの計算式で構築して値を算出することは可能でしょうか? もし可能なら、どのような式を構築したら良いか教えて頂けませんでしょうか? 面倒な質問で申し訳ありませんが教えて頂けると幸いです。

  • IF関数について

    エクセル2013使用です IF関数について教えて下さい A1が空欄だった場合はB1×B2の答えを A1が空欄ではない場合はC1×C2の答えを D1に表示させたい場合の数式を教えて下さい 初歩的な質問でゴメンナサイ お願い致します

  • Excel 長すぎるif関数

    こんにちは。Excelを使って、条件によって表す表示を変える場合、 例えばa1のセルには0~100までの任意の数字を入れるとして、b1のセルにa1の数字に応じていろいろな表示をしたい場合(具体的には100ならAを表示、90~99ならB、70~89ならC、55~69ならD・・・といったように)、if関数を使うと思いますが、 =if(a1=100,"A"1,if(a1>=90,"B",if(a1>=70,"C",if・・・・)))というように長々と続きますね。条件が少ないうちはいいのですが、条件が多くなると、大変複雑な式になり、入力もしづらいし、頭も使うし、閉じる括弧の数もわからなくなるし、作成に時間もかかりますよね。2つ以上の条件が重なる(例えばA1が90~99の範囲でかつa2がAならb1にB1と表示するなど)など複雑になってくるともうお手上げです。 これらを短時間で要領よく作成する方法はないでしょうか?次の観点で教えてください。 1 if以外の良い関数はあるか?または良い機能はあるか?それとも複雑であってもif関数が妥当なのか? 2 (if関数が妥当であるとして)複雑なif文の作成を簡単にできる方法があるか?あるいはそんなソフトがあるか? 3 やっぱりそういうのはVBAとかで作った方がいいのか?(できれば使いたくないのですが。)

  • openoffice calc で、IF関数

    openOffice calc の IF関数についての質問です。 A列のA1からA20のセルに(A,B,C,D)が、ランダムにあるとします。 これを、A列のセルの値が”A”ならば、返す値は”あ”、”B”ならば、”い”、同じように「C→う」「D→え」 のように、値に応じた、答えをB列に出させるにはどのような関数と式を使えば良いのでしょうか? 宜しくお願い致します。

  • IF関数

    エクセル2013使用です IF関数について教えて下さい A1×A2 という数式と B1×B2 という数式があり A1に数字を入力していない場合はB1×B2の答えを A1に数字を入力している場合は “B1×B2に数字が入っていても” A1×A2の答えを、C1に表示させたいです 答えの欄はC1ひとつだけで A1×A2とB1×B2の答えが足されないようにしたいです 説明が下手で申し訳ございません よろしくお願い致します

  • IF関数について教えてください。

    IF関数について教えてください。    A    B    C    D     1              ここの関数     この場合D1の数式をご教授お願いします。   もしA1に数値を入力した場合は「C1+A1」、もしB1に数値を入力した場合は「C1-B1」   おそらく2つのIFがあるのはわかるのですができません。      よろしくお願いいたします。

  • エクセル2003のIF関数についてお尋ねします。

    エクセル2003のIF関数についてお尋ねします。 A1、B1、C1に数字を入れます。A1またはB1が50以上の場合で、「且つ」C1が120以上である場合にD1に※を入れたいときの関数式を教えて下さい。 =IF(OR(A1>=50,B1>=50),?????,"※"、"")という感じなると思いますが、????の部分をどうしたらいいのか分かりません。且つC1が120以上の表現方法がわかりません。よろしくお願いします。

  • エクセルで複数のセルの合計をIF関数も含めて出す方法

    初歩的だと思うのですが・・ 異なった文字が入った各セルの合計を別セルにてIFを使用し、数字を出しながらなおかつ集計する方法がわかりません。  A   B    C   D 1 い   ろ 2     は   に   3 ほ       4 へ   と 5 A列に文字が入ると常に 500 B列に文字が入ると常に 200 C列に文字が入ると常に 100 として、D列にA-Cの合計(何もなければ空欄)を出したいのです。この場合だとD1=700, D2=300, D3=500...となるように。 IF(A1="","",500)+IF(B1="","",200)+IF(C1="","",100) のちゃんとした関数式を教えてください。よろしくお願いします。。

  • IF関数がうまくいきません。

    (=A1-B1)の式がC1に入っています。 D2には(=B1×0.00123)が入っています。 以降は、AとBにはそれぞれの数字が入り、CとDにはそれぞれに上の式の結果の数値が入っています。 この後、C2には、もしD2<C2なら、D2の数値を入れ、D2>=C2ならC2のままにしたいのですが、その場合の式を教えてください。

専門家に質問してみよう