Excelで負の日付または時間は非表示にする方法

このQ&Aのポイント
  • Excelで負の日付または時間が「#######」と表示される場合、非表示にする方法を教えてください。
  • エクセルのシートでマイナス1日の日付を表示する際、日付が入力されていないセルでは「#######」と表示されます。この表示を非表示にする方法を教えてください。
  • エクセルでマイナス1日の日付を表示する方法を教えてください。日付が入力されていないセルでは「#######」と表示されますが、非表示にすることはできないでしょうか?
回答を見る
  • ベストアンサー

エクセルで「負の日付または時間は####と…

エクセルで「負の日付または時間は########と表示されます」 これを非表示にしたいのですが、どうしたらよいのでしょうか? 今、やっている内容を伝えますと↓ 一つのエクセルの中に複数のシートを作成しております。 例えば、Aのシートに”年月日”を入力し、 Bのシートへリンクさせ、かつ、一日前の日付にしたいので、 よくある、最後尾に「-1」としました。 そうしたら、Aシートに日付の入力があるときは普通にマイナス1日の表示をしてくれるのですが、 Aシートが空欄の時「#######」と表示されてしまいます。 「###…」を非表示にすることはできないのでしょうか? できるだけ簡単にご説明いただけますと嬉しいです。 宜しくお願い致します。

noname#219096
noname#219096

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

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.2

>「###…」を非表示にする 表示だけで済ませたいなら、今の数式のまま =SheetA!A1-1 のようにしておいた状態で、セルの書式設定の表示形式のユーザー定義で yyyy/mm/dd;;; のように、前半の日付の書式は今のご希望の書式のまま、後ろに継ぎ足してやればOKです。 #参考 通常の(ただしウィンドウズ版エクセル限定)設定では、マイナスの日付・時刻は必ず###表示になります。列幅は関係ありません。 一応可能という意味ではエクセルのオプションで「1904年で計算する」の設定をしておくと、###表示ではなくなります。 ただし今度は言わずもがなですがシートAに値が入ってないと、「-1」という計算結果(に相当する日付)が###の代わりに表示されることになります。 別の方法: 一般的には =IF(SheetA!A1="","",Sheet1!A1-1) ぐらいで「Aシートが空っぽならそもそも違う計算をする」数式にしておく所です。 ただし、そもそもじゃぁそーいう時に具体的にどんな具合に計算をしたらいいのかは、その計算式の結果を更に次に何に使うのかによって工夫します。 =MAX(0,SheetA!A1-1) みたいな計算の仕方もあるかもしれません。 そも昨日の日付がただ表示できればよい、別にそれを使って何か計算するでもなく、不都合があった時に###が出ないだけで十分なら、前述したように表示を消すだけで十分という事です。

noname#219096
質問者

お礼

別の方法というものでやってみたら出来ました☆ すっきりして感謝しております。 みなさんの知識にすごいなぁと思いました。 ご回答いただきありがとうございました!

その他の回答 (2)

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.3

こんばんは! 具体的な対処方法はNo.2さんが丁寧に説明してくださっていますので、 余計なお世話かもしれませんが・・・ 苦肉の策として条件付き書式でマイナスの場合のフォント色を「白」にしてみてはどうでしょうか? 範囲指定 → 条件付き書式 → セルの強調表示ルール → 指定の値より小さい →  「0」を入力 → 書式右側下向き▼ → ユーザー設定の書式 → フォント色を「白」にしてOK データとしては#####が表示されますが、見た目は何も入っていないように見えます。m(_ _)m

noname#219096
質問者

お礼

言われるとなるほど!と思いながら、少し面白くて笑ってしまいました(^^)tom04さんの回答もよかったです。ご回答いただきありがとうございました。

回答No.1

=IF(Aシートの日付入力セル="","",Aシートの日付入力セル-1) という式を、Bシートの、結果を表示させたいセルに入力します。 参考: >負の日付または時間は#######と表示されます… そうではありません。セルの幅が狭くて内容を全部表示できない、という印です。幅を拡げてやればきちんと表示されます。

noname#219096
質問者

お礼

ご回答いただき有難うございます。

関連するQ&A

  • エクセルで「日付」を表示する件

    エクセルで「日付」を表示する件 シート(1)の「A1」に「この事件は」の文字列。「B1」に書式を日付にして「平成22年8月1日」と入力。「C1」に「に起こりました」と入力。 複数のセルの文字列と日付を一つのセルに合わせて「この事件は平成22年8月1日に起こりました」のようにしたいので、「D1」に「=A1&B1&C1」と入力すると、「この事件は40391に起こりました」と表示されてしまいます。 解決方法を教えて下さい。 エクセルのバージョンは2002です。

  • エクセルでシートをコピーしたら日付が進んでしまいました

    エクセルで日付を2009/04/01のように入力していたシートを シートでコピーところ、 そのシート内のどの日付も 4年と1日進んでしまった日付になってしまいました。 2009/4/1 は、2013/4/2 に 1969/11/20 は、1973/11/21 に それぞれなってしました。 書式を和暦での表示にしてあっても同様なことが起こるのですが、 これを防ぐにはどうしたらよいのでしょうか?  

  • エクセルのシート毎に日付

    業務日報を作成しています。 1シート1日なので、1ヶ月30シート~31シートあります。 1ヶ月1ファイルです。 この全シートのA1に日付を入れたいのですが、毎日入力するとも 限らないので、最初から 2008年8月1日(金)のような日付を 入力したいのです。 その場合、1日分を入力したら2日以降31日まで入力になるような 方法はないでしょうか?

  • Excel 日付管理の計算

    初めて投稿させて頂きます。 現在、Excelを用いてスケジュール管理表を作成しているのですが、 Excel初心者故、思い通りの表が作成できず、 困り果てております。。 どのような表を作るかと申しますと、 A列、B列には後々、日付または「-」を記入し、 C列にはA又はBの30日後(日祭日関係なく、単純に30日後)を 表示させるように作成したいのです。 詳細には、以下のようなルールの表を作成したいのです。 (1)AとBが空欄であるときは、Cは空欄 (2)Bに日付が入力され、Aが「-」のときは、CはBの30日後を表示 (3)AとB両方に日付が入力されたときは、CはBの30日後を表示 (4)Aに日付が入力され、Bが「-」のときは、CはAの30日後を表示 上記の内容で計算式を作成してみたのですが・・・ =IF(B1<>"", (B1+30),IF(A1<>"",(A1+30),"")) これでは「-」を入力したとき、エラー表示となってしまい、 困り果てております。。 皆様のご教授の程、よろしくお願い申し上げます。

  • エクセルの関数で・・・

    状況としては入力用シートが複数と表示用シート1つあります。 入力用シートは元々あったもので日付毎に作成されています。 表示用シートにある表に入力用シートの各項目を反映させて表示したいです。 例えば 表示用シートのC1へ表示させたい入力シート名 3水 を入力します。 そうすると、表示用シートのA1に入力シート 3水 のA1が 同様に各項目がリンクするようにしたいと思いますが、うまくできる方法が思いつきません。解決方法を教えてください。お願いします。

  • エクセルで日付が数値に変わってしまいます・・・

    エクセルで、関数CONCATENATEを使い別のシートから入力内容を貼り付けます。 例えば、CONCATENATE(SHEET2!A1,SHEET2!A2)とした場合、 SHEET2 A1 に(申請日)A2に日付(2007/08/21)が入っていると関数によって表示されるのは (申請日39315)と、2007/08/21が5桁の数値になってしまいます。これを日付表示させることはできるでしょうか?

  • 日付表示で「1/0」となることで

    例えばsheet1のA1セルで2003/6/11と入力し6/11と表示させる書式を設定しています。これをsheet2のA1セルに(=sheet1!A1)と設定し、sheet1の日付表示を転写させる設定をしている場合に、日付を入れている場合はそのまま転写されるのですが、sheet1のセルが無入力の場合にsheet2のセルに1/0と表示されてしまいます。この1/0の表示をsheet1が無入力の時にはsheet2にも空欄にしたいのですが、どのように設定すればよいのでしょうか。助けてください。

  • エクセルの日付で/が表示されません

    エクセルのシートに日付を2002/08/01という形式で入力したいのですが、 うまくいきません。 セルの書式設定で表示形式を日付にして、種類の欄を見てみても、 本来2002/08/01等と表示されてる筈の種類が、2002 8 1 のような[/]が 無い形式で表されており、実際にセルに日付を入力しても、[/]が表示 されません。 他の種類に変更する(例えば、年月日形式等)と、問題なく表示されます。 原因および改善策をご存じの方、教えてください。

  • エクセルのシート間の関連

    エクセルでsheet1に名簿を、sheet2に出席簿を作りました。sheet1、sheet2ともに会費納入日の欄があり、sheet1に入力した日付が自動的にsheet2にも表示されるように、sheet2の該当欄に「='sheet1'!(sheet1のセル名)」という関数式を入力しました。 これで、sheet1に日付を入力(たとえば6/3など)するとsheet2にも同様の日付が表示されるのですが、sheet1の日付欄が未入力(空欄)の場合、sheet2には「1/0」と表示されてしまいます。 これをsheet1で空欄の場合はsheet2でも空欄になるようにしたいのです。どのようにすればよいでしょうか。 うまく説明できずにわかりにくいかと思いますが、よろしくお願いします。

  • Excelの日付関数について教えてください

    今使用しているExcelファイルでBの列に年月日が入っています。それをA列では年月だけ表示させたいのですがどのような関数を設定したらよいでしょうか? できればうちの会社が25日締めなのでたとえばB列の入力が2005/12/26から2006/1/25までの日付だとA列では06/01と表示させ、2006/1/26から2006/2/25までだと06/02と表示させたいのですがそういうことはできますでしょうか? <例>  A    B 06/01  2006/01/10 06/02  2006/02/15