• ベストアンサー

WEEKDAY・TEXT関数について

A4セルに日付を入力すると、B4セルへ曜日が自動で出てくるように関数式を入れてみたのですが、空白時は『―』のようにする事は可能でしょうか? 下↓のようにB4セルへ入力すると、何も入力していないところは何故か(土)と勝手に出てきてしまいます。 =TEXT(WEEKDAY(A4),"(aaa)") それが出来なければ、セルの書式設定で曜日を入力すると、()付で表示されるようにユーザー定義を設定したいので、教えて下さい。 宜しくお願いします。

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

  • ベストアンサー
  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.1

空白は0と見なされ1900年1月0日=1899年12月31日になるからです。 =IF(A4="","-",TEXT(A4,"(aaa)")) ではいかがでしょう? =IF(A4="","",TEXT(A4,"(aaa)"))  にすると空白セルの場合、何も表示されません。

yukiko124
質問者

お礼

なるほど! きちんと理由があるんですね。 空白セルの場合何も表示されないのが理想でしたので、すごく助かりました。 早急な対応ありがとうございます!

その他の回答 (3)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.4

例データ A1:A10 2008/1/2 2008/1/3 2008/1/4 2008/1/5 2008/1/6 2008/1/8 2008/1/9 2008/1/10 2008/1/7のところは空白 ーー B1:B10に値を複写。 B1:B10に 書式ーセルー表示形式ーユーザー定義ー aaa;; 表示形式は正の場合;負の場合;0の場合の3つを指定できますが、この場合負の場合は無いが、0の場合を空白に指定するとうまく行くようです。 0の場合に注目するのも、これも日付セルは日付シリアル値という数値であること、またエクセルが、空白を数値0として扱うことを利用してます。 結果 2008/1/2 水 2008/1/3 木 2008/1/4 金 2008/1/5 土 2008/1/6 日 2008/1/8 火 2008/1/9 水 2008/1/10 木 2008/1/11 金 2008/1/12 土 2008/1/13 日 ーー aaa;"";"-" にすると 水 木 金 土 日 - 火 水 木 金 土 日 になりました。

yukiko124
質問者

お礼

ご丁寧に本当にありがとうございます! 今後是非活用させて頂きます。

  • sige1701
  • ベストアンサー率28% (74/260)
回答No.3

No2です >空白時は『―』のようにする ということでしたね =TEXT(A4,"(aaa);;-")

yukiko124
質問者

お礼

ご親切にありがとうございます。 とても助かりました!

  • sige1701
  • ベストアンサー率28% (74/260)
回答No.2

こんな感じでも =TEXT(A4,"(aaa);;")

関連するQ&A

  • エクセル関数について

    エクセル関数の使用方法について教えてください。 また、ストップしてしまいました。 日付から曜日を求められるように、CHOOSE関数とWEEKDAY関数を使用して以下のとおり入力しました。 (実際のセルの表示は違うのですが、分かりやすいようにA1とB1にしました) CHOOSE(WEEKDAY(A1),"(日)","(月)","(火)","(水)","(木)","(金)","(土)") 曜日を表示したいセルはB1です。 私としては、A1に日付が入力されていない場合は、関数が入っていても、B1は空白であってほしいのです。 いろいろ調べていたら、IFERROR関数が有効?のようなのですが、ソフトが古いらしく対応しておりません。 このような場合はどのようにしたら解決できるでしょうか。 因みに、IF関数の使用を試みたのですが、うまくいきません。 詳しい方、どうか教えてください。 よろしくお願いします。

  • 日曜日の色の変更

    初心者ですので、よろしくお願いいたします。 早速ですが、日常点検の表を作成しております。 A1セルに2007年、B1セルに1月と入力。 A2セルに日付表示のDATE関数設定【=DATE(A1,B1,1)】 A3セルに曜日設定【ユーザー定義aaa】 個々のセルに日付・曜日を表示した場合 『日曜日の場合(日付と曜日)の色変更』の仕方がわかりません。 一つのセルに月・日・曜日表示の場合(WEEKDAY設定・・)は 出来るのですが・・ 条件付き書式もうまくいきません。(設定方法が間違っているのかわかりませんが・・) 説明が不器用ですみません。 どなたかご存知の方、よろしくご伝授ください。

  • エクセルの関数(日付の入れ方)

    エクセル関数で日付の入れ方を教えてください。 例えば、「10/17(月)~10/22(土)」というように、数字を入力したら自動表示する方法はありますか?毎回、カレンダーで曜日を調べて入力するのが大変なので、簡単な方法があれば教えてください。ちなみに、セルの書式設定でやってみたのですが、m/d(aaa)→10/17(月)の入れ方しかわからず「~10/22(土)」までの自動のやり方がわかりませんでした。

  • 条件付き書式+WEEKDAY関数

    条件付き書式にWEEKDAY関数を使って、土日に色をつけました。 行を挿入すると、空白セルに土曜日の色がつくんですが、どうすれば色がつかないようにできるでしょうか?

  • エクセル関数の戻り値によりコピーができますか

       A   B  C 1  年  月  日 2  2011  9   17 3 4  日付 2011/9/17 5  曜日   土 B4は”=DATE(A2,B2,C2)”の関数を使います。 B5は”=TEXT(WEEKDAY(B4,1),"aaa")”の関数を使います。 一方曜日による7種類のシートがあります。シート名は"日""月""火""水""木""金" "土"です。B5の結果を判断して、曜日毎にA7に各シートの内容をコピーしたいの ですが、マクロを使わない関数だけでの方法はありますか? 各曜日のシートの内容は1セルだけでなく広い範囲なので全てA7を起点にコピー したいのです。宜しくお願いします。

  • Excelで曜日を表示させると、「土」となるエラー

    Excelで、A1に日付を記入して、B1に曜日が表示されるようにB1に関数を =TEXT(A1,"aaa") または =CHOOSE(WEEKDAY(A1),"日","月","火","水","木","金","土") と入力したのですが、A1が空白だと「土」と表示されてしまいます。出来れば何も表示されないようにしたいのですが、 何か、解決する方法はあるのでしょうか? ご回答お待ちしております。よろしくお願いいたします。

  • WEEKDAY関数で7などの数字でなく土などにするには?

    A列に日付、B列にWEEKDAY関数で曜日、C列以降にその日のデータを入れていたブックを今日開いたときエラーが出ました。 ブックは一応自動回復でまた使えるようになりました。 ところがA列の日付がシリアル値、B列の曜日が1から7までの数字になってしまいました。 A列のシリアル値はセルの書式設定を日付にして元に戻ったですが、B列を「3」とかでなく「火」などの表示に戻すにはどうすればいいのでしょう? B列に入れていた関数は      =IF(A119="","w",WEEKDAY(A119)) です。 (119行目の例です。A列未記入行はBにエラー値でなくwが表示されるようにしてあります。)

  • 条件付き書式で セルへ色を付ける方法

    条件付き書式でセルへ色を付ける方法を教えてください。 ●Office2013使用 ●別シート「祝日」で、祝日リストを作成済み  (A1、A2…と祝日日付を入れています) ●B1には「1」としか表示されていませんが  yyyy/m/d(aaa)の「d」のみ表示するよう書式設定 ●B2には「水」とした表示されていませんが  yyyy/m/d(aaa)の「aaa」のみ表示するよう書式設定 <やりたいこと> 書式設定(土日はWEEKDAY、祝日はCOUNTF使用)で 土・日・祝日のセルに色を付けたいのですが 3行目(空欄)だけ色が付きません。 日にちと曜日が入っているセルには書式設定で色が付けられます。 色々調べてやってみたのですがギブアップです…。 どなたかお詳しい方、教えていただけないでしょうか。 宜しくお願い致します。

  • DATE関数とTEXT関数で作成しています。

    DATE関数とTEXT関数で作成しています。 みんなが使うので、 セルをDELETEしますと、消えてしますので、VBAで作成したいと思います。 A1セルに年、B1セルに月、C1セルに日を入力しております。 D1にDATE(A1,B1,C1)、E1にはIF(B1=””,””,(TEXT(DATE(A1,B1,C1))を入力してます。 これをVBAで作成したいのですが、 sub 日付() formura 日付(A1,B1,C1)ここからがわかりません。 end sub よろしくお願いします。

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

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

専門家に質問してみよう