• 締切済み

エクセル関数で0表示のセルの集計(合計)すると#VALUE!の表示が?

表題の通り0表示を ON OFF出来るような関数を使い(以下のもの) =IF(ROUND(A1/2,0)=0,\"\",ROUND(A1/2,0)) セル毎の集計(合計)をしたのですが、 #VALUE!の表示が出ます。 意味は引数や演算子の種類が正しくない時に表示とあります。 解決の方策をお願いしたいのですが・・・ 皆様の知恵をお借りしたく思い投稿致しました。

  • bird5
  • お礼率44% (77/172)

みんなの回答

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.7

こんにちは。 >セル毎の集計(合計)をしたのですが、 どういうことをしたいのですか? 補足説明では、意味が通っていません。数式ひとつ出したところで、その数式自体が、文字列「""」を出力する以上は、合計欄のエラーを回避する機能はありません。むしろ、合計をどうやって出すかということです。 SUM関数は、文字列を、「0」と扱うという約束ごとがあります。SUM関数を使わない理由が何かありますか?しかし、SUM関数は、=SUM(A1:A10) なら可能ですが、 =SUM(A2+A3+A6+A8) は、引数の中でエラーを起こしているので、#VALUE!エラーが出ます。その場合は、 =SUM(A2,A3,A6,A8) (すでに回答で既出されています) このようにします。 ご自身の説明に自信がないときは、図でも貼り付けていただいていたほうが早いと思いますね。 もしかしたら、このようなことでしょうか。そうでなければ、質問の筋道が通りません。 ワークシートのセルには、見えないから何もない、ということではなく、数式を入れれば、数字の「0(書式で消す)」か、文字の「""」が入っていることです。それを数式上で処理できないか、という主旨だと思います。ただ、それは、ワークシートの性格上、不可能なのです。これは、Excelの基礎的なことですが、それは、あまり理屈で考えないほうがよいですね。理屈抜きで、パターンで覚えたほうが早いです。

bird5
質問者

補足

ご連絡ありがとうございます。 各皆様からのアドバイスに心打たれる思いです。 >どういうことをしたいのですか?  1:事の発端は数式を入れたセルの0表示を    あくまでも数式によって消したかったのです。    エクセルのツールから    オプション→ゼロ値のチエックを外すという方法も    ございますが・・・    シート全部の0表示が消えてしまうので    この度の私の意図する解ではありませんでした。        で、皆様からのアドバイスによって    各セル数式入力の0表示は出なくなりました。    以下の数式です。     =IF(ROUND(A1/2,0)=0,"",ROUND(A1/2,0))  2:上記の数式の加算合計を行ったところ    #VALUE!の表示が出ました。    それで、再度皆様方のお知恵を借りたく投稿を    致しました。    で、ここで解ったことは単純な加算は不可能で    あくまでもSUM関数を用いる事でした。    kmetuさんのご回答で示されたように   >飛び飛びなら =SUM(B1,B3,B5)    このケースが私の意図とする解でした。が    0表示は消えないでそのままでした。    しかし、 1 にも記したように0表示ON OFFの関数を    SUM関数に組み入れる事で見事解決いたしました。    以下数式です。    IF(SUM(B1,B3,B5)=0,"",SUM(B1,B3,B5))  3:まとめ これでシート全体の内 任意で自分の意図するところの    セル&合計欄に0表示をださくてすむ様になりました。    本来ならば各皆様方個々にお礼を差し上げるところですが    簡単ですがこの場をお借りして厚くお礼を申し上げ感謝致します。    本当に嬉しくエクセルも使い方により自分なりの仕様に    する事の一部が出来て嬉しゅうございます。   最後になりますが   皆様ありがとう!

  • kmetu
  • ベストアンサー率41% (562/1346)
回答No.6

> NO1さんの 補足説明に掲載しております。 No.1さんが回答されているように普通に足し算するのではなくてSUM関数で 集計を出すようにすればエラーが出なくなります。 B1からB10まで集計したいとしたら =SUM(B1:B10) です。 飛び飛びなら =SUM(B1,B3,B5) とかになります。

回答No.5

ああ、sumじゃなくて足し算ですか。足し算ならエラーですね。 sumを使うことで解決です。

回答No.4

>=IF(ROUND(A1/2,0)=0,\"\",ROUND(A1/2,0)) を入れて0.1~2.0まで0.1きざみで合計してみましたけど、エラーは出ませんでした。 \"\"の\記号は入力時にエラーだといって削除されてしまいましたが。 他に原因があるのでは?

回答No.3

>=IF(ROUND(A1/2,0)=0,\"\",ROUND(A1/2,0)) 真の場合に「\"\"」を返すようになっていますが、「\"\"」ではエラーになって式として入力できないのでは?あるいは別の表現をしたかったのでしょうか? それと、A1では#VALUE!が表示されていないのですか?

bird5
質問者

補足

早速の連絡ありがとうございます。 先ほどから NO1&NO2の各皆様の 補足説明に投稿した事象からおおよその 予測は判別できると思いますので 真に失礼とは思いますが そちらの補足説明をご覧下さいませ。 よろしくお願いいたします。

  • kmetu
  • ベストアンサー率41% (562/1346)
回答No.2

> 引数や演算子の種類が正しくない時 なのでその集計(合計)の式を書かないとなんともいえませんよ。

bird5
質問者

補足

早速の連絡ありがとうございます。 ご指摘になられている数式の一部を  NO1さんの 補足説明に掲載しております。 ので、ご覧なさって下さい。 そもそもは各セル毎に関数を使い0表示を出したくない事から の発想でして、このカテゴリー以外にもご相談をさせて いただいておりました。 一応、0表示は解決?かと 思われましたが 各セル毎の集計時にエラー?表示が出まして・・・(悲) 素人ながら出来ればこの状態を維持しつつ 何とか成らないかと  皆様にご相談をした次第です。 よろしくお願いいたします。

回答No.1

集計にsum関数を使わず、足し算していますね。 平均がゼロなら文字列""を返しているわけです。文字列の四則演算 は出来ないので、=B1+B5+B8なんてやってるところに文字列がある と、#Value!エラーになります。 sum関数なら、指定範囲内の文字列を無視するように作られています ので、#Value!エラーにはなりませんよ。

bird5
質問者

補足

早速の連絡ありがとうございます。 >集計にsum関数を使わず、足し算していますね。   其の通りでございます。 >・・・=B1+B5+B8なんてやってるところに文字列がある・・・  例えば以下のような数式を、各セル毎に入れています。   =IF(ROUND(H33/2,0)=0,"",ROUND(H33/2,0))   で、この中の 、””、が原因(文字列?)と言う   事なのでしょうか?  だとしたら、そもそも初めから無意味な数式を加算している  とも言えるのかなぁ~

関連するQ&A

  • エクセル関数で0表示のセルの集計(合計)すると#VALUE!の表示が?

    表題の通り0表示を ON OFF出来るような関数を使い(以下のもの) =IF(ROUND(A1/2,0)=0,"",ROUND(A1/2,0)) セル毎の集計(合計)をしたのですが、 #VALUE!の表示が出ます。 意味は引数や演算子の種類が正しくない時に表示とあります。 解決の方策をお願いしたいのですが・・・ 皆様の知恵をお借りしたく思い投稿致しました。

  • エクセル関数を教えて下さい。

    ROUND関数で除算して、小数点以下を四捨五入させたセル(ROUND(A1/1.05、1))を合計する際、ROUND関数で求めた画面上の整数の合計をさせる関数を教えて下さい。SUM関数を使用すると、除算した小数点以下の数字にて集計されます。

  • エクセルで各セルそれぞれ四捨五入してからの合計を求めたいのです

    エクセル2000です。 ワークシート関数でこんな場合どうすればよいでしょうか? 添付画像のようにA列に数値データがあります。 途中に空白(数式で ="" が表示されています。)のセルもあります。 このA列のデータを各セルそれぞれ四捨五入してからの合計を求めたいのです。 画像ではB列を作業列にして、 =IF(ISNUMBER(A2),ROUND(A2,0),0) と、="" への対応をして ROUNDして合計していますが、作業列を使わなくとも良い方法があればと思い質問いたしました。 途中の空白が、数式による ="" では無くほんとの空白であれば、 =SUMPRODUCT((ISNUMBER(A2:A11))*ROUND(A2:A11,0)) で、一発で求められるのですが・・・・・。 ご教示いただければ幸いです。 宜しくお願いいたします。

  • エクセルで各ファイルのセルにリンクする関数

    お手数ですが教えてください。 それぞれの伝票ファイルの合計金額を集計ファイルのセルにリンクして表示させて、集計金額の合計を求めたいのですが、上手くいきません。何か良い関数か?方法ないでしょうか? 例えば、 伝票ファイル1~10のSeet1のA1セルを、集計ファイルのSeet1のB1からB10セルへ表示させて、合計金額を求める。

  • エクセルで複数のセルの合計を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) のちゃんとした関数式を教えてください。よろしくお願いします。。

  • ROUND関数が含まれるセルの合計

    エクセル2007でROUND関数が含まれるセルの合計についてお尋ねします。 以下のようにセルが並んでいます。 ROUND関数が絡んでいるせいか、B14のセルのB9-B13が計算されると、 B14のセルに表示される金額の下一桁が、 普通に引き算した際よりひとつ大きな数字になります。 (例:(B9)279,750-(B14)14,609=(B14)265,141なのに、265,142と表示される) 対処法でB14のセルをROUNDDOWN(B9-B13,0)としてますが、 これで対処方法は間違いないでしょうか? またこの原因は何になりますでようか? よろしくお願いいたします。 ----------------------------- B6 ----------------------------- B7 ----------------------------- B8 ----------------------------- =SUM(B6:B8) ※B9セル ----------------------------- =ROUND(B9*0.006,0) ※B10セル ----------------------------- B11 ----------------------------- B12 ----------------------------- =SUM(B10:B12)  ※B13セル ----------------------------- =B9-B13  ※B14セル ----------------------------- また、このようなセルがいくつも横に並び、B9、B13の位置の合計をそれぞれ足し、 B9の合計-B13の合計を計算すると、同じように下一桁がひとつ大きい数字が表示されます。 この原因についてもお分かりになりましたら、お願いいたします。

  • #value!を非表示にしたい

    エクセルの関数に関する質問です。 Book「A」または「A'」のセルを参照にして、いくつかの関数をBook「B」、Book「C」およびBook「D」に書き込みました。 まずは、Book「A」のセル「a」またはBook「A'」のセル「a'」のどちらか入力されている方のセルを表示させる関数をBook「B」のセル「b」に作りました。 これです。↓ =if(「a」="",(if(「a'」=""," ",「a'」),「a」) 次に、セル「b」を参照にして、 =if(「b」=""," ",「b」) という関数をBook「C」のセル「c1」に作りました。 「a」または「a'」に入力されていなければ、「c1」は空欄になるはず・・・だけど、実際には参照セルに関数が入力されているからどうかな・・・と思いましたが、これは見事に、成功しました。 これが成功したので、さらに、「c2」に、 =if(「c1」=""," ",datedif(「b」,「c1」,"Y")) を作りました。 しかし、空欄か年齢のどちらかになるはずのセルが、「#value!」がでてきてしまい、空欄が出てきません。「a」または「a'」に入力されていれば問題なく年齢を計算して返してくれるのですが、「#value!」は目障りなので、表示させたくありません。参照を「a」または「a'」までさかのぼって関数を作ればもちろん問題ないのですが、いろいろ並べ替えなどをしておりそれは最高に面倒くさいのです。参照を「b」や「c1」にするとオートフィルを使って楽にできるので、こっちの方法を採用したいと思っています。 上の関数を使った結果出てきてしまった「#value!」を解決するにはどのような方法があるのでしょうか? 長くなった上にややこしくなって申し訳ありません。ぜひともご意見よろしくお願いします。

  •    【VALUE関数】について

    例えば、C7のセルに【30005#10】がセルの中の左側にあるします。 この#の前の引数を抽出したい時には、 CHOOSE関数を使うと⇒CHOOSE(LEFT(C7,1),"◎","○","丸")となりますが VLOOKUP関数を使うと⇒VLOOKUP(VALUE(LEFT(C7,5)),記号集,2,0)になります。 これはなぜでしょう? 私は、セルの左にあるから【VALUE関数】を使えば良いと思っていましたが、どうやら違う様です。 この【VALUE関数】の見分け方と、このような時は【VALUE関数】を使えば良い というアドバイスを頂ければありがたいです。 年始早々すみません。

  • Excel 関数 

    明日までに書類を作ってしまいたいので、ご協力ください おねがいいたします。 Aのセル(A10)の右隣のセルに、 =IF(A10=0,"","-") で、A10のセルをツール、オプション、で、0を表示しない。 とした場合、空白になります。 Bのセル =IF(AB12=0,"",ROUND(AB12*AK14/AK15,1)) Bの右隣のセルに、Aのセルと同じ関数をいれると、- が表示されます。 それは、Bのセルに四捨五入の関数があるからでしょうか? Bにも、- を表示しない関数は、あるのでしょうか? Bのセルを、変えないとだめなのでしょうか?

  • IF関数で結果を出したセルの集計

    お世話になります。 出社時間  退社時間   昼休    勤務時間 A1に9:00 B1に18:00  C1に1:00  D1に=IF(B1-A1-C1=0,"",B1-A1-C1) と下まで続いてD10セルでSUM関数で集計しようとすると合計値が明らかにおかしくなります。こちらで調べたところ「""」があるとSUM関数は使えない?と回答を見つけたのですが具体的な解決法が見つからず質問させて頂きました。書式設定を時刻にしている為、0にして非表示ができず、何かよい方法があればご教授下さいませ。 よろしくお願い致します。

専門家に質問してみよう