• ベストアンサー

エクセルで曜日関係分かる人お願いします

エクセルで曜日関係分かる人お願いします 出勤簿を作っているのですが、曜日入力が面倒で関数で入らないかなと考えています、 E1に年度、 N1に月、 I2から横に日(1~31)が入っています、I3に曜日を入れます、 年度と月の数字を変えることにより、自動で曜日を出したいのです E1+N1+I2をI3に入れ曜日を出したいと思うのですが、 どんな関数と書式で良いのでしょうか 使用エクセルは2000 2007です

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

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

回答No5です。 返事が遅くなりまして申し訳ありませんでした。 曜日について条件付き書式で色を付けておられるとのことで、その時にWEEKDAY関数を使っておられますね。 それでしたら私が示した式でI3セルには=TEXT(I2,"aaa")との式は止めてつぎのような式にすればよいですね。 =I2 と入力して横にオートフィルドラッグします。 その結果は、単に2行目の日付が表示されることになりますが右クリックして「セルの書式設定」から「表示形式」のユーザー定義で aaa と入力することで曜日が表示されます。そのような状態でしたらWEEKDAY関数を使った条件付き書式は有効に働きます。 TEXT関数を使った場合には答えが文字列となりますのでWEEDAY関数を使うことができません。

daiku164
質問者

お礼

再度回答ありがとうございます、お手間を取らせ申し訳ありませんでした ありがとうございました。 この質問に回答された皆様へ 回答ありがとうございました。 月末最終日、関数の少しの変更、で希望どうりの表が出来たという事で、 #5&9さんの物を、採用させていただきました、ありがとうございました、

その他の回答 (9)

回答No.10

#6です >>考え方はいろいろあると思いますが、表示通りの値がいいのかなあというコンセプトで。 ということで セルをI3セルからAM19セルまで選択して 条件付き書式 数式が =I$3="土" 数式が =I$3="日" 添付画像参照

daiku164
質問者

お礼

再度回答ありがとうございます、お手間を取らせ申し訳ありませんでした 私も条件書式で、"土""日"で、書式で出来ないかなっと思っていました、 できるんですね、私の場合は、3の通りだけ指定したもので、出来ない物と 勘違いしていたようです、 回答ありがとうございました。

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

こんばんは! 横からお邪魔します。 すでに良い回答は出ていて、重複すると思いますので 参考程度で目を通してみてください。 他の方の補足に >19セルまで色を付ける事が出来るでしょうか とありましたのでお邪魔しました。 ↓の画像でI2セルに =IF(OR($E$1="",$N$1=""),"",IF(MONTH(DATE($E$1+1988,$N$1,COLUMN(A1)))=$N$1,DATE($E$1+1988,$N$1,COLUMN(A1)),"")) という数式を入れ、セルの表示形式はユーザー定義から d としています。 そして、I3セルは =IF(I2="","",I2) として、表示形式はユーザー定義から aaa とします。 I2・I3セルを範囲指定し、I3セルのフィルハンドルでAM列(31日)まで列方向にコピーします。 そして、I3~AM9を範囲指定し、 条件付書式の「条件1」に =WEEKDAY(I$2)=1 として色を「ピンク」に 「条件2」の数式欄に =WEEKDAY(I$2)=7 として、色を「薄い青」にしています。 これで範囲指定した行全体に色がつくと思います。 以上、余計なお世話かもしれませんが、 参考になれば幸いです。m(__)m

daiku164
質問者

お礼

回答ありがとうございます、前回の条件付書式がそのまま活かせました、大変参考になりました

  • 135ok
  • ベストアンサー率34% (26/75)
回答No.7

これで、いかがでしょうか。 I2 =DATE(E1,N1,1) J2 =IF(I2="","",IF(I2+1>DATE($E$1,$N$1+1,0),"",I2+1)) I3 =IF(I2="","",TEXT(I2,"aaa")) 条件付書式については I2からI19までセルを選択し、下記を入力。 =WEEKDAY(I$2)=7 =WEEKDAY(I$2)=1 あとは、I2からI19のセルをコピーして、他のセルに書式を貼り付け。

参考URL:
http://www.eurus.dti.ne.jp/~yoneyama/Excel/jituyou/gekkan-yoko.htm
daiku164
質問者

お礼

回答ありがとうございます、コピー貼り付けした所、5/1が「月」になってしまいました。(^^;

回答No.6

考え方はいろいろあると思いますが、表示通りの値がいいのかなあというコンセプトで。 年号がB1セルに入っているとする 月末の表示処理:AK2セルに =IF(AJ2="","",IF(ISNUMBER(1*($B$1&$E$1&"年"&$N$1&"月"&AJ2+1&"日")),AJ2+1,"")) 右へAM2セルまでオートフィル 曜日の処理:I3セルに =IF(I2="","",TEXT($B$1&$E$1&"年"&$N$1&"月"&I2&"日","aaa")) AM3セルまで右へオートフィル 存在しない日付は非表示です。

daiku164
質問者

お礼

回答ありがとうございました。

daiku164
質問者

補足

回答ありがとうございます、ハイパーリンクの修正が少なくなりそうです、 (日に日付作業日報へのリンクを仕込んでいた物で) 条件付き書式で土曜、青、日曜 赤の色分けが無くなってしまいました、 関数使いながら色分けって出来ないのでしょうか、 条件付き書式で使った関数 =WEEKDAY(I$3)=7   青  土 =WEEKDAY(I$3)=1   赤  日 また、条件付き書式で文字列の土、日として設定した場合、 19セルまで色を付ける事が出来るでしょうか

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

このような表を作るときは年月を指定したらその月の最終日までを表示させるのがよいでしょう。例えば2月などでしたら31日まで表示させる必要もないわけです。 そのためにはI2セルに次の式を入力してAN2セルまでオートフィルドラッグしたのちに、I2セルからAN2セルまでを範囲として選んで右クリックし、「セルの書式設定」から「表示形式」のタブで「ユーザー定義」を選び種類の窓には d と入力すればよいでしょう。 =IF(MONTH(DATE(1988+$E$1,$N$1,COLUMN(A1)))=$N$1,DATE(1988+$E$1,$N$1,COLUMN(A1)),"") その後にI3セルには次の式を入力してAN3セルまでオートフィルドラッグします。 =IF(I2="","",TEXT(I2,"aaa"))

daiku164
質問者

お礼

回答ありがとうございました。

daiku164
質問者

補足

回答ありがとうございます、月末最終日まで考えていませんでした、   条件付き書式で土曜、青、日曜 赤の色分けが無くなってしまいました、 関数使いながら色分けって出来ないのでしょうか、 条件付き書式で使った関数 =WEEKDAY(I$3)=7   青  土 =WEEKDAY(I$3)=1   赤  日 また、条件付き書式で文字列の土、日として設定した場合、 19セルまで色を付ける事が出来るでしょうか 条件付き書式での色付けに付いて、何かわかりますか、

  • layy
  • ベストアンサー率23% (292/1222)
回答No.4

年、月、日を合成する考えで良いです。WEEKDAY関数とaaa書式のヘルプを見て下さい。また、応用でシート名を年月にしておいて、1行目タイトルに式入れるのも汎用性あって良いと思います。

daiku164
質問者

お礼

回答ありがとうございます、他のシートはひと月分の日付作業日報にしています。

  • chiizu2
  • ベストアンサー率41% (164/400)
回答No.3

下記の関数で I3に関数【=DATE($E$1,$N$1,I$2)】を入力 書式を 【aaaa】と設定する「月曜日」と表示 【aaa】と設定する「月」と表示 以後右にコピー

daiku164
質問者

お礼

回答ありがとうございます、コピー貼り付けした所、 8157(ユーザー書式aaa「月」)になってしまいました(^^; 5/1は土曜になります

  • jcctaira
  • ベストアンサー率58% (119/204)
回答No.2

次の関数でできます。 =TEXT(CONCATENATE("H",$E$1,".",$N$1,".",I2),"aaa")

daiku164
質問者

お礼

回答ありがとうございました。

daiku164
質問者

補足

早速の回答ありがとうございます、条件付き書式で土曜、青、日曜 赤の色分けが無くなってしまいました、 関数使いながら色分けって出来ないのでしょうか、

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.1

一例です。 書式は標準として下さい。 =IF(I$2<>"",TEXT("h"&$E$1&"."&$N$1&"."&I$2,"aaa"),"")として右方向にコピーして下さい。

daiku164
質問者

お礼

回答ありがとうございました。

daiku164
質問者

補足

早速の回答ありがとうございます、曜日表示は出来ましたが、 条件付き書式で土曜、青、日曜 赤の色分けが無くなってしまいました、 関数使いながら色分けって出来ないのでしょうか、 条件付き書式で使った関数 =WEEKDAY(I$3)=7   青  土 =WEEKDAY(I$3)=1   赤  日 また、条件付き書式で文字列の土、日として設定した場合、 19セルまで色を付ける事が出来るでしょうか