• ベストアンサー
  • すぐに回答を!

西暦から、曜日を表示⇒何も入力されていない⇒土曜日

タイトルの件、質問いたします。 下記の関数をご覧ください =TEXT(A1,"aaaa") A1に、日付が入力されていると、その曜日を返します 例A1⇒2013.1.31 B2に木曜日 しかし、A1に何も入力されていないと、土曜日と表示されます なぜでしょうか? やりたい事は、何も表示されていない場合は、B2セル【関数が入っているセル】にも 何も表示されないようにしたいです 以上、ご存知の方、いらっしゃいましたら、宜しくお願いします。

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

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

  • ベストアンサー
  • 回答No.3
  • asciiz
  • ベストアンサー率71% (5923/8305)

Excelにおける日付の実体というのは、1900年1月1日を「1」とした、日付単位の数値(シリアル値)なんです。 「2013.1.1」というセルの、表示書式を「日付(またはユーザー定義)」から「標準」に変更すると、「41305」というシリアル値になります。 で、何もないセルというのは、ゼロと解釈され、すなわち「1900年1月0日」の曜日を表示することになるというわけなのです。 ちなみに、Excelのオプションに「1904年から計算する」と言うものがあります。 これは、このシリアル値による計算に影響し、「1904年1月1日からの経過日数」を用いて計算するようになります。 この状態で空白セル(0)の曜日を表示すると、今度は「金曜日」となります。 ---- ということで ---- 方法1. 何も入っていないことを判断して、明示的に空白表示します。 →「=IF(A1<>"", TEXT(A1,"aaaa"), "")」 方法2. 書式設定には、セミコロンで区切ってマイナスの場合・ゼロの場合に使用する書式というのを指定できます。 →「=TEXT(A1,"aaaa;;")」 「何も指定しない」という指定がわかりにくいと思いますが、 「=TEXT(A1,"aaaa;<マイナス>;<ゼロ>")」 というやつの、"<マイナス>" "<ゼロ>" 部分を ""(何もない文字列)にしたものです。

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

その他の回答 (2)

  • 回答No.2
  • te12889
  • ベストアンサー率36% (715/1958)

空白セルを数式で参照すると、ゼロが返されますので、シリアル値ゼロの日の曜日が表示されているのだと思います。 if関数を組み合わせて、ゼロの場合は空白を返すようにすればよいと思います。

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

  • 回答No.1

「Excel 基準日」で検索するといろいろと出てきます。 ざっと読んだ感じ、Excelの日付計算ではシリアル値と言うものを使用しています。 そして、シリアル値が1の場合に1900/1/1となります。(Windowsの場合です) そして、Excelでは1900/1/1が日曜となるらしいです。(実際には日曜ではないらしいですが・・・) 空欄にした場合に土曜と表示されるということですが、空欄の場合シリアル値を0と判断しているのではないでしょうか。 空欄の場合にB2にも何も表示させないのであれば、IF文で場合わけするとかでしょうか。

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

関連するQ&A

  • 翌日の曜日を関数で表示するには

    たとえば、セルA1に月曜日と入れて(日付関数で入れずに文字列で入れるとします)B1には翌日の火曜日を表示させる様な関数はないでしょうか?ちなみにC1には水曜、D1には木曜とA1にある曜日を入れたらB1、C1、D1と翌日の曜日が入るようにしたいのです。 色々調べましたが、わかりませんのでよろしくお願いします。 A1  B1  C1 月  計算式  計算式   (表示火)(表示水) よろしくお願いします。   

  • Excelで曜日を出力する方法

    セルA1に3/19と入力すると、3月19日と表示されますよね。 で、セルA1に日付を入力したら、 B1に「日曜日」と表示させる方法がありましたら、教えてください。 Weekday関数を使うと、数字で曜日が、表示されるところまではわかるんですが。 この数字で表示されたものを、「日曜日」といったように、 日本語で表示することは無理でしょうか? IF関数と組み合わせようとしたら、やっぱり、また、1900年におめにかかってしまって(-_-;) ユーザー定義でaaaaで、日曜日と表示させるのも知っているんですが、 式を組み合わせるとむちゃくちゃになってしまって。 よろしくお願いいたします。

  • 曜日の表示

    EXCELで下記の説明から操作して年月日データから自動で曜日を表示させるようにしました。 結果 a1=2007年10月2日が a2=火と表示させたのですが、 日付データが入ってない場合曜日データも表示させないようにはできますか。 よろしくお願いします。 (説明) ●表示形式を設定して曜日を表示する  日付に対応する曜日を表示する最も簡単な方法は、曜日の表示形式を設定することだ。曜日を表示したいセルに日付のシリアル値を入力あるいは参照して表示形式を表に示す記号を設定すればよい。 表『曜日の表示形式』  記号 表示スタイル  表示内容 ddd 英語の省略記号  Sun~Sat dddd 英語表記  Sunday~Saturday aaa 日本語の省略記号  日~土 aaaa 日本語表記  日曜日~土曜日 操作 通常は参照先のセルと同じ表示形式が自動設定されるが、参照式を入力するセルの表示形式がすでに設定変更されている場合は(2)のように自動設定されないが、続けて(3)以降の操作を行えば良い。 (1) 曜日を表示するセルに日付を参照する数式「=C12」を入力する (2) 参照先と同じ表示形式で値が表示される 操作 (1) 設定するセルを右クリックしてショートカットメニューを開く (2)[セルの書式設定]を選択する (3) セルの書式設定ダイアログボックスが開く (4)[表示形式]タブをクリックする (5)[ユーザー定義]をクリックする (6) 種類の欄をクリックして「aaa」を入力する (7)[OK]をクリックする (8) 曜日が表示される

  • エクセル 日付と曜日で自動表示

    初心者です。 下らない内容かも知れませんが 宜しく御願い致します。 セルA1に手動で日付を入力 セルB1に曜日を自動表示させています。 セルA2に日付に合わせて 日付毎の1~31の項目をプルダウンから 曜日に合わせて曜日毎の1~7の項目の内 2種類をセルA3とセルA4にプルダウンから 選択しています。 10月1日で説明すると、セルA2は1日なので プルダウンから1番を選択 セルA3は月曜なので、プルダウンから 1番を選択 セルA4は月曜~木曜は6番 金曜はセルA3が6番でセルA4が7番 土曜はセルA3が5番でセルA4が6番に なります。 このプルダウン選択を日付入力すると 自動切替させたく色々調べてみましたが 混乱しています。 どの様にすれば出来るか、御教示の程 宜しく御願い致します。

  • エクセルでの曜日の表示方法について

    =TEXT(A1,"(aaa)") この様な関数で曜日を表示しています。 日付を入力していないときには(土)が表示されます。 入力しない場合は表示せず、入力した場合のみに曜日を表示させたいのです。 特に今の関数にこだわっている事もありません。 どの様にすれば良いか、誰か教えて下さい。御願いします。

  • Excel2010 出勤簿の曜日自動入力について

    Excelで前月21日~当月20日までの出勤簿を作っています。 曜日の自動入力についてご教授をお願いいたします。 A1セルに年、A3セルに月の数値を入力します。 A8セルからA18セルまで21から31の数値(日にち)を、A19セルからA38セルまで1から20の数値(日にち)を予め入力してます。 上記の条件で B8セルからB18セルに、A1に入力した年とA3に入力した”前月”の21日~31日までの曜日を、 B19セルからB38セルに、A1に入力した年とA3に入力した”当月”の1日~20日までの曜日を表示する関数を教えていただきたくよろしくお願いいたします。 *A3セルが1(1月)の場合、B8セルからB18セルには昨年の12月の曜日が表示となります。 何卒よろしくお願いいたします。

  • 曜日を入力したい

    Aに日 Bに曜日を入れたいのですが、どうすれば簡単にできますか? =WEEKDAY(A2) といれセルの書式設定 ユーザー定義  aaaa  とするのは面倒です。なにか楽な方法ありませんか?

  • excel 曜日表示

    EXCELで下記の説明から操作して年月日でーたから自動で曜日を表示させるようにしました。 結果 a1=2007年10月2日が a2=火でなければならないところ 月となりました。とりあえずは day(a1+1)で無理やり火と表示させたのですが、何が悪いのでしょうか。 よろしくお願いします。 (説明) ●表示形式を設定して曜日を表示する  日付に対応する曜日を表示する最も簡単な方法は、曜日の表示形式を設定することだ。曜日を表示したいセルに日付のシリアル値を入力あるいは参照して表示形式を表に示す記号を設定すればよい。 表『曜日の表示形式』  記号 表示スタイル  表示内容 ddd 英語の省略記号  Sun~Sat dddd 英語表記  Sunday~Saturday aaa 日本語の省略記号  日~土 aaaa 日本語表記  日曜日~土曜日 操作 通常は参照先のセルと同じ表示形式が自動設定されるが、参照式を入力するセルの表示形式がすでに設定変更されている場合は(2)のように自動設定されないが、続けて(3)以降の操作を行えば良い。 (1) 曜日を表示するセルに日付を参照する数式「=C12」を入力する (2) 参照先と同じ表示形式で値が表示される 操作 (1) 設定するセルを右クリックしてショートカットメニューを開く (2)[セルの書式設定]を選択する (3) セルの書式設定ダイアログボックスが開く (4)[表示形式]タブをクリックする (5)[ユーザー定義]をクリックする (6) 種類の欄をクリックして「aaa」を入力する (7)[OK]をクリックする (8) 曜日が表示される

  • あるセルにデータが入力された日を表示

    A列(A1)のセルにデータが入った場合、D列(D1)にそのセルに データが入力された日付を表示させたいのですが、どのように やったらいいでしょうか?TODAY関数を使うと毎回更新されて しまいます。 TEXT関数+TODAY関数で出来るかな?と思ったのですが、 =TODAY()を使うとセルに入力された日でなくて、ファイルを開いた 日付に毎回更新されてしまいます。 A列のセルにデータが入った時にD列にその入力日を表示させたい のです。こういう事は簡単に関数を使って出来ませんか?わかる方 がいれば教えてください。

  • エクセルでaaa曜日表示を文字にしたい

    エクセルでaaa曜日表示を文字にしたい セル番地A1に 2008/7/16 入力      B1に=A1表示形式aaaaで 水曜日 と表示される     c1に ひらがなで すいようび と表示したいが どうしたら できますか? 小学校の夏休みの宿題をつくっています。