『活動日の集計(週間)』(ポッポ) カレンダーつくり[[20090708162332]]で教えて頂き、 [[20060228115649]]を参考にさせて頂き2009年のカレンダーができました。 2つほど教えて頂きたいことがあります。 1つ目は、カレンダー内で今日の場合、字の色が変わったりして今日の日が わかるようにしたい事です。 もう1つは、 このカレンダーで集計シートを作り、週間活動日の計算をしたいのです 日祝は完全休業日で土曜日は会社規定で出勤日があります。 1週間ごとの活動日を月ごとで集計したく思ってます。 7月の場合は1週目が1日(水)〜3日(金)まで3日間で 4週目は休日が20日なので21日(火9)〜24日(金)で4日間。 土曜の出勤日が会社にあり祝日リストのC列に7/18が出勤日の為、3週目は6日間と なります。 このような月曜〜金曜(出社日の土曜があれば土曜日まで)の活動日を集計する ような事はできませんでしょうか? よろしくお願いいたします。 A B 1 2009 7月 2 3 1日 水 4 2日 木 5 3日 金 6 4日 土 7 5日 日 8 6日 月 9 7日 火 : : 《祝日リスト》       A         B        C 1 2009年               2 2009年の祝日     年月日 出勤日 3 元日        2009/01/01 2009/5/16 4 振替                2009/6/13       5 成人の日      2009/01/10 2009/7/18 6 建国記念の日    2009/02/11 : −−−−−−−−−−−−−−−−−−−−−−−−−−−− 《集計シート》 A B 1 7月    活動日 2 1週目    3日 <−−−7月1〜3日まで 3 2週目    5日 4 3週目    6日 <−−−18日の土曜日が出勤日 5 4週目    4日 <−−−20日が祝日 6 5週目    5日 ---- 1つ目についてのみ (検証もせず机上論ですが、) 条件付書式で第1条件に 「セルの値が」「次の値に等しい」「=TODAY()」 としたらどーでしょーか? (とおりすがり) ---- とおりすがり さん ありがとうございます。一度試してみます。 やっぱりもう一個のほうはむりですかね^^; (ポッポ) ---- >2009年のカレンダーができました。 この時の数式。 祝日リストのB列の範囲 土曜日の出勤日を入力する範囲 (それぞれ、名前の定義をするなら その名前) カレンダーが有るシートのシート名 を教えて下さい。 (HANA) ---- HANAさん 遅くなってすいません。 カレンダーが間違っておりました。作ったカレンダーは以下のような形で作ってます。 [[20060228115649]]を参考にさせてもらってます。 (Sheet1) A B C 1 2009 7月 2 1日 水 3 2日 木 4 3日 金 5 2 4日 土 6 1 5日 日 7 6日 月 8 7日 火 : : A2 =IF(B3="","",IF(COUNTIF(祝日シート!$D$3:$D$13,Sheet1!B3)>0,"", IF(COUNTIF(祝日シート!$C$3:$C$40,B3)>0,1,IF(WEEKDAY(B3)=1,1,IF(WEEKDAY(B3)=7,2,"")))))          をA32まで下にコピーしました B2 =DATE(B1,C1,1) B3 =IF(B2="","",IF(MONTH(B2+1)=$C$1,B2+1,"")) をB32まで下にコピーしました C2 =B2 でC32まで下にコピー (表示形式のユーザー定義で(aaa) ) カレンダーの方はSheet1で 祝日リストはSheet2を名前の変更で「祝日シート」にしてます。 祝日シートのB列は B3〜B40 土曜出勤日の範囲は祝日シートの C3〜C13 です。 宜しくお願い致します。 (ポッポ) ---- Sheet1のA列は、条件付き書式の設定をする時に使用して  1→赤 2→青 等ですか? A2セル用として載せておられる式は 少しずれているように思いますが。。。 まず、2007より前のバージョンをお使いの場合は ツール(T)→アドイン(I) の 分析ツールにチェックを入れて下さい。 次に、A2用の式を =IF(B2="","",IF(COUNTIF(祝日シート!$C$3:$C$13,Sheet1!B2)>0,WEEKNUM(B2), IF(COUNTIF(祝日シート!$B$3:$B$40,B2)>0,1,IF(WEEKDAY(B2)=1,1,IF(WEEKDAY(B2)=7,2,WEEKNUM(B2)))))) に変更。 集計シートのA2:A6には「1,2,3・・・」と 数値のみ入力し 表示形式で「週目」を付けてください。 集計シート [A] [B] [1] 7月 活動日 [2] 1 3 [3] 2 5 [4] 3 6 [5] 4 4 [6] 5 5 B2セルに =COUNTIF(Sheet1!$A$2:$A$32,WEEKNUM(DATE(Sheet1!$B$1,Sheet1!$C$1,1))+A2-1) として、B6迄フィルドラッグ。 (HANA) ---- HANAさん すいません。 A2は間違えてました。すいません。 HANAさんのおっしゃるとおり、条件付で青、赤にしてあります。 ありがとうございます。教えて頂いた形で一度作成させて頂きます^^(ポッポ) ---- あっ、すみません 一足遅かった様です。。。。 分析ツールのチェックが不要バージョンです。 Sheet1のD列に作業列を作成して Sheet1のA列の数式はそのまま D2に =IF(B2="","",IF(A2="",ROUNDUP((B2-DATE($B$1,$C$1,1)+WEEKDAY(DATE($B$1,$C$1,1),1))/7,0),"")) としてフィルドラッグ。 集計シートのB2セルには =COUNTIF(Sheet1!$D$2:$D$32,A2) として、B6迄フィルドラッグ でも良いかもですね。 作成済みのA列の「1,2」を「6,7」等に変更して 「""」の部分(2か所 前回 WEEKNUM(B2) が入っていた場所)に ROUNDUP((B2-・・・))/7,0)の式を 入れてもらっても良いかもしれません。 (作業列が減らせるので。。。) =IF(B2="","",IF(COUNTIF(祝日シート!$C$3:$C$13,Sheet12!B2)>0,ROUNDUP((B2-DATE($B$1,$C$1,1)+WEEKDAY(DATE($B$1,$C$1,1),1))/7,0), IF(COUNTIF(祝日シート!$B$3:$B$40,B2)>0,6,IF(WEEKDAY(B2)=1,6,IF(WEEKDAY(B2)=7,7,ROUNDUP((B2-DATE($B$1,$C$1,1)+WEEKDAY(DATE($B$1,$C$1,1),1))/7,0)))))) (HANA) ---- HANAさん ありがとうございます。 出来ました〜^^ 一度表を作って教えて頂いたやり方を応用してみます。 晩くにありがとうございました。(ポッポ)