• ベストアンサー

エクセル関数で曜日を返す方法を教えてください。

   2012 年 8 月度   1 2 3 4 5 6  A1・・・2012  B1・・・年  C1・・・8  D1・・・年度  と入力されてて、2行目に1~31日まで入力されてて  3行名に曜日を返したいのですが、  簡単な関数を教えてください。  

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

  • ベストアンサー
  • yosifuji20
  • ベストアンサー率43% (2675/6115)
回答No.1

A4 =DATE($A$1,$C$1,A2) A3 =WEEKDAY(A4,1)  この式をB列から右のコピーします。 これでA3に曜日に値する数字が出ます(日曜日は1,月曜日は 2...) 曜日の数字を日月火に変換する方法はVLOOKUPでも使えばよいでしょう。

kyowa-group
質問者

お礼

さっそく、試してみました。 簡単に出来て助かりました。 ありがとうございました。

その他の回答 (5)

  • yosifuji20
  • ベストアンサー率43% (2675/6115)
回答No.6

Ano.1です。 Ano.1を少し替えて見ます。 A3の式を下のように変更すれば、直接日月火と表示で行きます。 多分これは一番簡単かなと思いますが。 セルA3 =CHOOSE(WEEKDAY(A4,1),"日","月","火","水","木","金","土")

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.5

月によっては31日までの表示を必要としませんので2行目の日にちは関数を使って表示させるのがよいでしょう。 例えばA2セルには次の式を入力して右横方向にドラッグコピーします。 =IF(MONTH(DATE($A$1,$C$1,COLUMN(A1))=$C$1,DATE($A$1,$C$1,COLUMN(A1)),"") その上でA3セルには次の式を入力して右横方向にドラッグコピーします。 =IF(A2="","",TEXT(A2,"aaa")) これでその月の長さに応じた日付と曜日が表示されます。

noname#159857
noname#159857
回答No.4

A3=TEXT(DATE($A$1,$C$1,A2),"aaa") 日付の数値が入っているかいないかで表示を変えるなら A3=IF(A2<>"",TEXT(DATE($A$1,$C$1,A2),"aaa"),"") のように。

  • DJ-Potato
  • ベストアンサー率36% (692/1917)
回答No.3

2行目を単なる数字1|2|3|・・・にせず、2012/8/1|2012/8/2|・・・と入力し、(※) A3 = TEXT(A2,"ddd") とすると、MonとかWedとか表示されます。 A3 = TEXT(A2,"dddd") とすると、MondayとかWednesdayとか表示されます。 A3 = TEXT(A2,"aaa") とすると、月とか水とか表示されます。 A3 = TEXT(A2,"aaaa") とすると、月曜日とか水曜日とか表示されます。 ※8月1日を入力したら、セルの右下を引っ張ってコピーすると楽です。  あと、書式設定で日付で日だけの表記にすることも忘れずに。

  • co_maam
  • ベストアンサー率65% (13/20)
回答No.2

少し大掛かりになりますが、参考にしてください。 (1)A1に該当の月の1日を入力します。(2012/8/1) (2)A1の表示形式をユーザ定義でyyyyとします。 (3)C1はA1を参照して、表示形式をユーザ定義でmとします。 (4)A2はA1を参照します。 (5)B2以降は左+1とします(結果2012/8/1…2012/8/31となる)。 (6)2行目の表示形式をユーザ定義でdとします。 (7)2行目を3行目にコピーします。 (8)3行目の表示形式をユーザ定義でaaaとします。 関数ではありませんが、これで実現できると思います。

関連するQ&A

専門家に質問してみよう