• ベストアンサー
  • 困ってます

EXCELの数式について教えて下さい

=IF(ISBLANK(H2)," ",IF(H2>1000,3000+6*700+6*(H2-1000),IF(H2>300,3000+7*(H2-300),"3000"))*65%) 上記の数式は正しくありませんか? H2セルに何らかの数値が入っている場合は「IF(H2>1000,3000+6....」以降の計算を行い、その結果が 隣のセル(I2)に出て、空白の場合隣のセルに空白で返す、ということをさせたいのですが、この数式ですとどうしても「#VALUE!」が返ってきてしまいます。 何か良い方法はないでしょうか?

共感・応援の気持ちを伝えよう!

  • 回答数2
  • 閲覧数58
  • ありがとう数7

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

  • ベストアンサー
  • 回答No.2
  • baka
  • ベストアンサー率83% (15/18)

H2 の値が文字列の場合に起こり得ます。 " " (半角スペース1文字) であっても同様です。 空白は "" です。式中の " " も "" に 修正されたほうがよろしいでしょう。 なお、空白および文字列両者とも対応させるには 次の式を適用されるとよいでしょう。 =IF(ISNUMBER(H2),IF(H2>1000,3000+6*700+6*(H2-1000),IF(H2>300,3000+7*(H2-300),"3000"))*65%,"")

共感・感謝の気持ちを伝えよう!

質問者からのお礼

ありがとうございました。 目のうろこがとれたようでした。

関連するQ&A

  • ExcelのIFとISBLANK関数を使って#VALUEが出る

    IF(ISBLANK(J12),"",J12*N12) という数式をセルQ12に設定しています。 セルJ12とN12に数値を入れ、これらをスペースキーで数値を消すとセルQ12に「#VALUE」が出てしまいます。 しかし、該当セルを右クリックから「数式と値のクリア」で消すと「#VALUE」は消え、空白になります。 スペースキーで消去してもセルQ12に「#VALUE」が出ないようにする方法はないでしょうか?

  • エクセルの数式

    教えてください! =IF(R1="5","",Q3+1) 簡単に言いますと、"5"の時は空白セルにして、それ以外はQ3の数値に1をプラスする数式なんですが、 "5"だけじゃなく、"7"の時や"9"の時も空白セルにしたいんです。 OR関数を組み合わせればいいんですか? 複数の条件を理論値に置く時はどおしたらいいんですか?

  • EXCEL 数式が入った空白セルを数える

    毎度お世話になっています。 質問の内容ですが、例えば下記のようなシートがあるとします。 セルB1、セルC1、セルD1:手入力セル セルA1:数式「=IF(B1="","",B1+C1)」 セルA2:文字列 セルA3:数式「=IF(D1="","",D1*0.1)」 セルA4:文字列 セルA5:A1+A3の計算結果を表示 (※なお、セルA2、A4は数値が入らない) というような場合において、 ●セルB1、C1、D1になにも入力されていない場合、セルA5が空白となる。 ●セルB1、C1にのみ数値が入力されている場合、セルA5の計算結果がセルA1の値のみ。 ●セルD1にのみ数値が入力されている場合も上記と同様に計算結果が表示される。 以上の条件を満たす数式をセルA5に入力したいのですが、 COUNTBLANKは数式が入っている場合には使えず、COUNTAの場合だとセルA1、A3のどちらにも数値が入った場合に表示される、といった数式になります。 IFをいくつも使えば可能とは思いますが、もう少し単純に数式を作れたらと思い質問をさせて頂きました。 よろしければ御回答宜しくお願い致します。 (内容を訂正したため、いったん質問を削除しました。もし御回答中の方が居ましたら申し訳ありませんでした。)

その他の回答 (1)

  • 回答No.1
  • ARC
  • ベストアンサー率46% (643/1383)

えっと、手元の環境(Excel2000)でやってみましたが、正しく計算されます。 というわけですので、数式の方には問題は無いと思われます。 しいて言えば、"3000"の部分なんですが、ひょっとしたらExcelのバージョンや設定によっては、"文字列"×数値の計算ができないのかも ってことで、"3000"→3000, 65%→0.65 とすると、動くかもしれません。

共感・感謝の気持ちを伝えよう!

関連するQ&A

  • エクセル 0表示を空白にする(自動で)

    エクセルでセルに数式を入れています。計算する必要がないセルについては「0」が表示されているのですが、表示させない方法を教えて下さい。 詳しく書くと   A  B  1 100  105(A1*1.05) 2 空白 空白(但し計算式は入っている) 3 200  210(A3*1.05) Bには隣のA*1.05という数式が入っています。 A1とA3に数値を入力した場合、上記のようにしたいのですが、A2が空白だとB2に「0」が入ってしまいます。 他のファイルで同じような計算式を作成したとき、参照セルAが空白だとBも空白になっていました。ただし、Bにはちゃんと計算式が入っていてAに数値を入力するとBに答えが入ります。 特に意識せず作ったらこのようになっていたのです。 どうにかして同じようにしたいのですが、見比べても全然分からずギブアップです。。。 どなたかご教授ください。

  • Excelの数式について教えてください。

    =IF(AND($A7="",$I7="",),"",IF($X7=$AA$13,IF(AND(NOT($A7=""),NOT($I7="")),$H7+$P7,IF($X7=$AA$13,IF(NOT($A7=""),$H7,IF($X7=$AA$13,IF(NOT($I7=""),$P7))))))) 何とか上記の数式を作ったのですが、 (X列、AA列は色々な店名が入力されています。)X列の店名が、AA列の店名に合致すると、正常に計算されますが、合致しないと"FALSE"が表示されます。 合致しない場合は、"FALSE"でなくセルを空白表示にしたいのでが、数式を教えてください。 Excel2003 セルの書式設定:X列、AA列は標準、他の列は数値です。この式はQ列に入力されています。 よろしくお願いいたします。

  • エクセルの計算式を教えてください。

    エクセルの計算式を教えてください。 例えば、セルB2に、IF(B1="","",20)という数式があったとしまして、B2が "" だった場合、別セルに =B2+50 という計算式を入れると、B2を空白とみなさず、VALUE!になってしまいますが、この空白のB2を、0もしくは、無視して計算する方法はありますでしょうか?

  • エクセルの数式について

    エクセルの数式について詳しい方がいらっしゃれば教えていただけないでしょうか。 例えば、 (1)M28セルに以下の数式が入っているとします。 =IF(INDIRECT(M$19)="","",IF(SUMIF(INDIRECT(M$20),$D27,INDIRECT(M$21))=0,"",SUMIF(INDIRECT(M$20),$D27,INDIRECT(M$21)))) (1)の数式で参照しているセルとして以下のものがあります。 (2)M19セル⇒=CONCATENATE("'計算'!",M13,)&$D$14 (3)M20セル⇒="'計算'!AR6:"&"AR"&$D$15+1 (4)M21セル⇒=CONCATENATE("'計算'!",M13)&$C$16+1&CONCATENATE(":",M13)&$D$16+1 (5)M13セル⇒N(文字列のみ) (6)D14セル⇒152(数値のみ) (7)C16セル⇒5(数値のみ) (8)D16セル⇒150(数値のみ) (9)D27セル⇒1-1(文字列のみ) そこで質問ですが、(1)の式で参照している、M$19やM$20、M$21がどこのセルを参照しているかわからないのです。 例えば、(2)の式では、M19セルには、『'計算'!N152』と表示されます。この数式とその結果としてM19に『'計算'!N152』と表示されるのはわかります。が、『'計算'!N152』がどこのセルのことを言っているのかがわかりません。 『!』があるので、『計算』というワークシートのN152を参照しているのかな・・・?とも思ったのですが違いますよね?! 因みに当ブックの中には『計算』というワークシートはありませんでした。 きちんと説明できている不安ですが、回答いただけると大変助かります。 宜しくお願い申し上げます。

  • エクセルで数式の入ったセルの平均値を出したい

    こんにちは 教えていただきたいのですが、エクセルの数式が入ったセルの平均値を出したいのです。 例えば、 D5-F5列:ifやsum文で組み立てた数式の結果 G5列:上記セルの平均値 Ctrl+Shiftを押しながらD-Fを選ぶとできると聞いたこともあったのですが、やはり結果は、#DIV/O!になってしまいます。 D-Fには、空白もあり、その結果を出す数値は流動的になります。 すみませんが、教えてください。よろしくお願いいたします。

  • Excel2003の数式設定について教えて下さい。

    Excel2003の数式設定について教えて下さい。 【C1セル】には 数式「=IF(A1="","",A1)」 【D1セル】には 数式「=IF(B1="","",B1)」 【E1セル】には 数式「=IF(AND(ISBLANK(C1),ISBLANK(D1)),"",(IF((C1+D1)=0,"---",C1+D1)))」 と設定した状態で、 【A1セル】に 数値「100」と入力し、 【B1セル】に 数値「200」と入力した場合、 【E1セル】は 「300」と出力されますが、 【A1セル】、もしくは【B1セル】を 空欄にした場合、 【E1セル】は エラーとなり、「#VALUE」と出力されてしまいます。 小生としては、【C1セル】【D1セル】の両セルとも表示上は空欄の為、 ISBLANK関数でTRUEと判定し、【E1セル】は空欄になってほしいのですが、 【C1セル】や【D1セル】には数式が設定されている為、 ISBLANK関数でTRUEと判定されずに、「IF((C1+D1)=0」の演算でエラーとなっている様です。 小生が実現したいこと、 「【C1セル】と【D1セル】の数式の実行結果が空欄以外の時のみ、  【E1セル】の数式を実行する。」 の方法をご存知の方、教えて下さい。お願い致します。

  • EXCELの数式の問題が全く分かりません

    今EXCELの模擬試験をやっているのですが、いつも必ず数式の問題で間違い、次に回答を見てもさっぱり分かりません。 問題 セル【G6】の数式を、「上記目標」が空白の場合は、「達成率」に空白を表示するように変更してください。 答え (1)セル【G6】を選択します (2)「=IF(E6",",F6/E6)」に編集します。 とあるのですが、「=IF(E6",",F6/E6)」と入力すると FALSEと出てきてしまいます。 こういった数式の問題の回答について解りやすく説明されたWEBページってないでしょうか? 今使ってるEXCELのテキストはFOM出版のよくわかるマスター2003とEXCEL2000というテキストですが、これらをよく見ても私には数式の問題が良く分かりません。

  • EXCELでの関数についての質問

    EXCELの関数についての質問です。EXCELのバージョンは2010を使用しています。 状況を簡略化して説明すると以下のとおりです。 Cell(A1)=実数   (数値、あるいは空白) Cell(B1)=数式   (=IF(ISBLANK(A1),"",50/B2*100) Cell(C1)=数式   (=IF(ISBLANK(B1),"",100-C2) これでA1~A100までデータが散在するデータベースを想定してください。 この時B1は定数を参照しているのでA1がBLANKの時、ISBLANK関数の効果で文字が表示されず、 またA1が数値の時には式の通り計算が行われます. しかしCでは、B1の数式を参照していることになるので、B1がBLANKの場合でも計算が行われ、 結果として#VALUE!のエラーとなります。 この状況を回避するためにはどうすればいいのか、スマートな解法をお待ちしています。 VBマクロなどの方法でも大丈夫ですが、基礎的なことしかわからないのでコメントを付けていただけるとありがたいです。 そこまで実害は無い問題なので、例えば別個に計算するなどの力技はご遠慮ください。

  • エクセルのSUM数式で。

    ある列の合計を算出したいのですが、ただその列は、IF数式の結果が表示されているのですが、「#value!」も含んでいるのです。このため合計がでないのですが、「#value!」のセルを無視して、合計を算出する方法はないでしょうか? ちなみに、IF数式の結果「#value!」がでることは、回避できません。 よろしくお願いします。

  • 関数 IFとISBLANKのネストについて

    空白のセルに「0」とか「#VALUE」は見栄えが悪いので、 「IFとISBLANK」の組み合わせて、参照セルが空白 の場合は「値を求めるセルも空白」としていました。 更にこのネストのセルを参照して、値を求めるセルにも 「IFとISBLANK」のネストで空白にしたいと思って実行したら 「#VALUE」となって見栄えは良くありません。  何か良いやり方についてご教授いただきたいのですが。

専門家に質問してみよう