• 締切済み

Excelでの =○○が空白の場合、0と表示されてしまうことの

仮にセルA1で、=B1としたとします。 その時、B1が空白だと、A1には 0 などと表示されてしまいます。 今まではこれの対処として、 =IF(B1="","",B1) として、B1が空白でないのみ表示するという計算式にしています。 ですが、いろんなカ所などで 空白=0表記 となることで、複雑な計算式の場合や、時間などの表示形式、などなど、そのたび上記の式に書き換えなくてはならず、大変手間なのですが、他に 0 ではなく 空白とする方法はありますでしょうか? もしご存じの方法がありましたら、アドバイス頂けたらと思います。 よろしくお願いします。

みんなの回答

  • comv
  • ベストアンサー率52% (322/612)
回答No.4

みなさん こんにちは >(ここのセル(仮にX1)を、更に他部分で(仮にZ1)の計算にもちいているのですが、 >X1が空白でなく、0表示(同0:00表示)だとX1が#VALUE!という答えになってしまいます。 >(ちなみにX1の値は同一ファイルの他のシートから指定しています。) 前提が、エラー回避式を入力するのが煩わしいので、できるだけ簡素化したいとのことなので 再参照している場合 まずは、Z1の式 と X1の式を見比べて  Z1でエラーが出ない様にX1の式を加工する  Z1の式内でX1の値をエラーにならないように加工する のどちらかになってしまいます。(結果、どちらが楽かの選択です) これには  X1 Z1 相互の式がどのようなものかが必要なので、現在の式を記載して頂けますか!

thank001
質問者

お礼

すみません、上記の文 を一部訂正の再書き込みです。 ---------------------------------------------- セルG7(出勤) =他のセル!AA1 セルH7 (1時間指定分割) =TIME(HOUR(G7),CEILING(MINUTE(G7),15),0) セルI7 (退勤) =他のセル!BB1 セルJ7(1時間指定分割) =IF(I7<1,TIME(HOUR(I7),FLOOR(MINUTE(I7),15),0),TIME(HOUR(I7),FLOOR(MINUTE(I7),15),0)+1) セルK7(休憩時間) 1:00 セルL7 =IF(OR(E7="-",G7=""),"",J7-H7-K7) としてセルL7に労働時間を求める形です。 TIME関数の部分は1時間を15分単位で区切るためのものです。 このような形ですと、参照元の 他のセル!AA1 が空白の場合、G7には 0 が返され、L7 は エラー値 の #VALUE!となってしまいます。 G7、I7において、今まではこれの対処として、 =IF(他のセル!AA1 ="","",他のセル!AA1) としていたのですが、これに限らずあまりに =IF(○○="","",○○) という式が多く、他のセルなどからリンク(?表現が的確でないでしょうか)するたび この式に書き換えなくてはならなく、また そもそも、なぜ空白なのに 0 が返されるのか?、、と思い、私が知らないだけで何か他の方法があるのではないかと思い、質問書き込みさせていただきました。 また何かご存じの事やアドバイスなどいただけたらと思います。 よろしくお願いします。

thank001
質問者

補足

comvさん、moccosさん書き込みありがとうございます。 セルG7(出勤) =他のセル!AA1 セルH7 (1時間指定分割) =TIME(HOUR(G7),CEILING(MINUTE(G7),一時間分割単位),0) セルI7 (退勤) =他のセル!BB1 セルJ7(1時間指定分割) =IF(I7<1,TIME(HOUR(I7),FLOOR(MINUTE(I7),一時間分割単位),0),TIME(HOUR(I7),FLOOR(MINUTE(I7),一時間分割単位),0)+1) セルK7(休憩時間) 1:00 セルL7 =IF(OR(E7="-",G7=""),"",J7-H7-K7) としてセルL7に労働時間を求める形です。 TIME関数の部分は1時間を指定分単位で区切るためのものです。 このような形ですと、参照元の 他のセル!AA1 から 0が返され、L7 は エラー値 の #VALUE!となってしまいます。 G7、I7において、今まではこれの対処として、 =IF(他のセル!AA1 ="","",他のセル!AA1) としていたのですが、これに限らずあまりに =IF(○○="","",○○) という式が多く、他のセルなどからリンク(?表現が的確でないでしょうか)するたび この式に書き換えなくてはならなく、またそもそも、なぜ空白なのに 0 が返されるのか?と思い、私が知らないだけで何か他の方法があるのではないかと思い、質問書き込みさせていただきました。 また何かご存じの事やアドバイスなどいただけたらと思います。 よろしくお願いします。

全文を見る
すると、全ての回答が全文表示されます。
  • moccos
  • ベストアンサー率43% (61/140)
回答No.3

その後の書込みが無いようですので・・・・・ 空白だけでなくエラー値を表示したくない場合は =IF(B1="","",B1)  でなく ↓ =IF(ISERROR(B1),"",B1) ■エラーの場合は空白でそうでない場合はB1 となされば如何でしょうか? この場合も空白を参照した場合『0』値は表示されますので comvさん、solisereさんが応えられているように「ゼロ値」を表示しない設定にする必要があります。 ただ、補足の『時刻の0:00』と『0』はご存知とは思いますが表示形式の違いですから0も99も整数であれば『0:00』ですよね? もともとの数式や関数・参照するセルの形式で答えも変化すると思いますので実例を挙げられた方が回答も的確なものになると思います。 余計な言い回しでしたら申し訳有りません。

全文を見る
すると、全ての回答が全文表示されます。
  • comv
  • ベストアンサー率52% (322/612)
回答No.2

こんばんは 数式結果が数値である場合 結果が0となったものを全て表示させないでよろしければ  ツール オプション 表示タブ ゼロ値 のチェックを外す 特定の範囲の 0 を表示させないなら  範囲選択 書式設定 ユーザー定義 # 数式結果が文字列である場合  =B1&""

thank001
質問者

補足

comvさん、solisereさん、書き込みありがとうございます。 すみません、例であげたような単純な形では見事できたのですが、そこが時間表示などの場合、対処することが出来ませんでした。 (ここのセル(仮にX1)を、更に他部分で(仮にZ1)の計算にもちいているのですが、X1が空白でなく、0表示(同0:00表示)だとX1が#VALUE!という答えになってしまいます。(ちなみにX1の値は同一ファイルの他のシートから指定しています。) またよろしければアドバイスいただけたらと思います。 よろしくお願いします。 それから、「オプション」での設定変更では、0は表示されなくなったのですが、計算には反映されませんでした。 よろしくお願いいたします。

全文を見る
すると、全ての回答が全文表示されます。
  • solisere
  • ベストアンサー率31% (34/108)
回答No.1

「ツール」→「オプション」で 「表示」タブの「ウインドウオプション」 の中の「ゼロ値」のチェックをはずしてみてください。 当方2000なので他のバージョンのことはわかりませぬ。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • Excelの計算式での空白の扱い

    Excelの表計算式で例えば"B1"セルと"A1"セルの値を同じにするような式で、セル"A1"が空白だったら、セル"B1"を”0”表示でなく、空白表示にしたいため、   「=IF(A1="","",A1)」 と書くと、"A1"は見た目には空白なのに、何故か"B1"には"0"入ってしまいます。 何故なのでしょうか?

  • エクセル 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に答えが入ります。 特に意識せず作ったらこのようになっていたのです。 どうにかして同じようにしたいのですが、見比べても全然分からずギブアップです。。。 どなたかご教授ください。

  • 任意の空白のセルを0表示するには?

    A1のセルに文字が入っていれば数式通りの計算を行い、A1のセルが空白 ならば0を表示させるには、どうのようにすればいいのでしょうか? ---------------------------------------------------------------- ⇒現状  =IF(A1=””,0,”通常の計算式”)では0は表示されません。 A1には関数が入っています。 A1には書式設定で表示形式が分類[ユーザー定義]で#,###,と入っています。 ※こうすると1000単位で表示されます。  136283という数字なら表示されるのは136ということです。 そのせいか0の表示ができないのです。 最終的にはA1+A2+A3の結果をB1に表示したいのですが A1が空白のためB1が計算できず#DIV/0!と表示されてしまいます。 すみませんが、よろしくお願いいたします。

  • エクセル:表示が途切れないようにしたい

    例えば、A1のセルに「abcdefghijklmnopqrstuvwxyz」と入力します。 B1のセルは、IF文を「=if(A2=1,"ok","")」と入れます。 A2セルが「1」のときはB1に「ok」が表示され、A1の表示は途中で途切れますよね。(「abcdefg」くらいまでしか表示されない) 1以外の数字を入れたときは、A1の表示が途中で途切れないようにしたいのに、B1が空白表示なのに途切れてしまいます。判断式がfalseのときに途切れないよい方法はないでしょうか。 1.マクロは使いたくありません。 2.1つの方法として、False時の""の代わりに"aaaa"と入力し、   A1とB1を別のセルに「形式を選択してコピー」で「値」だけコピーし、そのコピー先のセルを"aaaa"⇒ブランクに「置換」すればできます。ただ、この方法は煩雑なので、もっとよい方法はないでしょうか。

  • 空白セルのとき0表示を消す方法(エクセル2003)

    例えば、      A     B     C     D・・・・・・ 1    10    20    0     30 2                   0 ・ ・ D1に、=A1+B1+C1 D2に、=A2+B2+C2の計算式が入っている時 A2,B2、C2が空白セルのとき、D2に0を表示したくない(空白セルにしたい)です。 過去の質問より、IF関数を使えばよいとわかったのですが、いまいちよくわからないため質問させて頂きました。 よろしくお願いします。

  • エクセルでIF関数の論理式に幅がある場合

    A1~A10がデータのタイトル文字を入れる欄で、そのうちひとつでも空白のセルがあればJ11に"データが揃っていません"、とアラートを出したいと思っています。 空白セルがなければとある計算式による答え(仮に"500")を表示させたい。 そこで考えたのが、 IF(AND(A1="",A2="",…A10まで続く),"データが揃っていません",(ある数式の結果500)) なのですが、論理式の部分にA1~A10まで一つづつ式を入れなくても簡単にできる方法はないでしょうか。 何箇所かに応用したいので書き直す部分が少ないほうがミスも少ないと思うんです。 よろしくお願いします。

  • エクセル VLOOKUPについて教えてください

    宜しくお願いします。 エクセルの関数で結果が空白の時『0』と表示させ、次のシートの計算に反映させたいのですが、空白の為計算できないようです。よい方法を教えてください。 セルに入っている式は IF(ISNA(VLOOKUP(A1,○○!$A$1:$F$50,5,0)),"0",(VLOOKUP(A1,○○!$A$1:$F$50,5,0)) この式が一行に3箇所入っており、一つに数字が入ると残りの2つのセルは空白になってしまいます。 一つのセルに数字がはいったら、残りのセルに『0』と表示させたいのです。 どうぞ宜しくお願い致します。

  • エクセルのワークシート関数で最小値

    エクセルのワークシート関数でA1セルとB1セルの最小値を求める場合 =MIN(A1,B1) だと思います。 しかし、これではどちらかのセルが空白だった場合、空白セルを0とみてはくれません。 そのため =MIN(A1*1,B1*1) と、1を乗ずることで空白セルを0にして比較できます。 しかしA1、B1セルの値が直接入力されたものでなく計算の結果の場合にはうまくいかない場合があります。 A1、B1ともに計算式がはいっているので空白はあり得ないのですが、計算結果で =”” と空白表示の場合、空白表示セルを0とみてはくれません。 しかし、空白表示セル(=””)に1を乗ずるとVALUEエラーになってしまいます。 やむを得ず、IF関数を使い =MIN(IF(A1="",0,A1),IF(B1="",0,B1)) と、無理やり=””を0にしているのですが、ほかになにか良い方法はないでしょうか? A1、B1の計算式を変えて=0とすればよいのでしょうが、元の計算式を変えずにやる方法があれば御教示ください。

  • Excel 空白の場合、空白にする

    Eセルに =A2&C2&B2&D2 で入力します。 結果は「()」と表示してしまいます。 A2セルが空白の場合、Eセルも空白にしたいです。

  • EXCEL 行をまたぐ表示

    下のように、B1が空白の場合、A1に入力した文字がB1にまたがって表示されますが、例えばB2にif(A10="","",suika)なんて式が入っていたとしたら、B2は空白なのですがA2に入力した文字が途中までで表示されません。    A   B 1 すいかのたね 2 すいかの     ←B2のセルに式が入っている これを1の列のようにBが空白の場合、Bの行にまたがって表示させる方法はないでしょうか?

専門家に質問してみよう