[[20220320123102]] 『条件付き書式を使用して、一週間ごとに横列が塗り』(かず) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『条件付き書式を使用して、一週間ごとに横列が塗りつぶされるようにしたい』(かず)

はじめまして。

エクセルで横並びのカレンダーとシフト表を作成しております。

日付行の下の行が一週間(月曜日〜日曜日)ごとに自動で塗りつぶされるようにしたいのですが、エクセルを始めたばかりで悪戦苦闘しております。皆様にご教授いただければ幸いです。

A1=年(年月を入力すると、自動で日付と曜日が変わる様になっています。)

B1=月

B3〜AF3=日付と曜日(月によって29日、30日、31日は表示されないようにしてあります。B3=1日、AD3=29日、AE3=30日、AF3=31日)

塗りつぶし行=B6〜AF31(29日、30日、31日の部分は、月によって塗りつぶし不要です。)

塗りつぶしスタート=B6

以下のようなイメージにしたいと考えております。
横に書くと見づらくなる為、あえて縦に書かせて頂きたいと思います。

1日(火) 塗る
2日(水) 塗る
3日(木) 塗る
4日(金) 塗る
5日(土) 塗る
6日(日) 塗る
7日(月) 塗らない
8日(火) 塗らない
9日(水) 塗らない
10日(木) 塗らない
11日(金) 塗らない
12日(土) 塗らない
13日(日) 塗らない
14日(月) 塗る
15日(火) 塗る
16日(水) 塗る
17日(木) 塗る
18日(金) 塗る
19日(土) 塗る
20日(日) 塗る

よろしくお願い致します。

< 使用 Excel:Excel2019、使用 OS:Windows10 >


A1の年、B1の月、B3〜の日付がどのように入力されているのか分かりませんので考え方だけ。

例えばB3に「2022/4/1」と入力し、
条件付き書式に =MOD(WEEKNUM(B3,2),2)=0
書式を設定して、右方向へドラッグ。

(TKG) 2022/03/20(日) 14:01


 3行目はシリアル値ということやったら
 B6セルから設定したい範囲を選択

 条件付き書式の数式
 =ISODD(WEEKNUM(B$3,2)-WEEKNUM($B$3,2)+1)
 
(どや!) 2022/03/20(日) 14:21

 B6セルだけに条件付き書式を設定した後
 適用先を =$B$6:$AF$31 にしてもかまいまへん。
 
(どや!) 2022/03/20(日) 14:34

TKG様、どや!様、早速のお返事ありがとうございます。

ご教授頂いた式でやってみたのですが、できませんでした

A1=2022のG標準年

B1=3のG標準月

B3=DATE(A1,B1,1)

C3〜AC3=B3+1、C3+1、D3+1、、、AB3+1

AD3〜AF3=IF(DAY(DATE($A$1,$B$1,29))=29,DATE($A$1,$B$1,29),"")
→30日、31日は同じ式で変更してあります

(かず) 2022/03/20(日) 15:24



試して見ましたが、塗る塗らないになり色はつきましたけど

(nm) 2022/03/20(日) 15:52


 塗りつぶしたいのが、その月の奇数の週ということやったら
 =ISODD(WEEKNUM(B$3,2)-WEEKNUM($B$3,2)+1)
 この式で、2022年の1月から12月まで全部その通りになりました。

 できんて、どうなりましたんや?
 違うとこに色がついたとか、一つも色がつかんかったとか、せめてそれぐらい言うてもらわんと。

 条件付き書式のルールの種類は【数式を使用して、書式設定するセルを決定】にしてまっか?
 
(どや!) 2022/03/20(日) 16:10

返信遅くなり、すみませんでした。
たくさんのコメントありがとうございます。

月末〜翌月初で週を跨ぐ場合に、塗りつぶしと空白が交互になりませんでした。

例えば、本来なら5/23〜29まで塗りつぶしになっているため、
5/30〜6/5まで空白でなければならないのですが、

5/23(月)〜29(日)=塗りつぶし
5/30(月)〜31(火)=空白
6/1(水)~5(日)=塗りつぶし

となってしまいます。

月曜日〜日曜日を1週間とし、月を跨いでも先月最後の週が塗りつぶしであれば、
翌月頭の日曜日まで塗りつぶしになるようにしたいです。

条件付き書式のルールは、数式を使用して、書式設定するセルを決定になっています。
(かず) 2022/03/22(火) 12:49


>月末〜翌月初で週を跨ぐ場合に、塗りつぶしと空白が交互になりませんでした。
当初の質問内容と食い違っています。
当然そうなってもおかしくはないです。
関数苦手他の回答を期待してください。
(ななし) 2022/03/22(火) 16:41

 5月と6月の「月跨ぎ」の話が出てますが、
 6月1日ってどのセルに入っているんですか?(日付って3行目だけじゃないのですか?)

(半平太) 2022/03/22(火) 17:56


 >月を跨いでも先月最後の週が塗りつぶしであれば、 
 >翌月頭の日曜日まで塗りつぶしになるようにしたいです。 
 ちがっていたらスルーしてください。
(どや!) さんの式に IF を追加して■を表示したものです。
 =IF(ISODD(WEEKNUM(B$3,2)-WEEKNUM($B$3,2)+1),"■■■■","")
 表がやたらに長すぎて見づらいですが勘弁を。
 AG1 に6月としてあります。

     |[A] |[B]     |[C]  |[D]  |[E]  |[F]  |[G]  |[H]  |[I]  |[J]     |[K]     |[L]     |[M]     |[N]     |[O]     |[P]     |[Q]   |[R]   |[S]   |[T]   |[U]   |[V]   |[W]   |[X]     |[Y]     |[Z]     |[AA]    |[AB]    |[AC]    |[AD]    |[AE]  |[AF]  |[AG] |[AH] |[AI] |[AJ] |[AK] |[AL]    |[AM]    |[AN]    |[AO]    |[AP]    |[AQ]    |[AR]    |[AS]  |[AT]  |[AU]  
 [1] |2022|       5|     |     |     |     |     |     |     |        |        |        |        |        |        |        |      |      |      |      |      |      |      |        |        |        |        |        |        |        |      |      |6月  |     |     |     |     |        |        |        |        |        |        |        |      |      |      
 [2] |    |        |     |     |     |     |     |     |     |        |        |        |        |        |        |        |      |      |      |      |      |      |      |        |        |        |        |        |        |        |      |      |     |     |     |     |     |        |        |        |        |        |        |        |      |      |      
 [3] |    |1(日)   |2(月)|3(火)|4(水)|5(木)|6(金)|7(土)|8(日)|9(月)   |10(火)  |11(水)  |12(木)  |13(金)  |14(土)  |15(日)  |16(月)|17(火)|18(水)|19(木)|20(金)|21(土)|22(日)|23(月)  |24(火)  |25(水)  |26(木)  |27(金)  |28(土)  |29(日)  |30(月)|31(火)|1(水)|2(木)|3(金)|4(土)|5(日)|6(月)   |7(火)   |8(水)   |9(木)   |10(金)  |11(土)  |12(日)  |13(月)|14(火)|15(水)
 [4] |    |        |     |     |     |     |     |     |     |        |        |        |        |        |        |        |      |      |      |      |      |      |      |        |        |        |        |        |        |        |      |      |     |     |     |     |     |        |        |        |        |        |        |        |      |      |      
 [5] |    |        |     |     |     |     |     |     |     |        |        |        |        |        |        |        |      |      |      |      |      |      |      |        |        |        |        |        |        |        |      |      |     |     |     |     |     |        |        |        |        |        |        |        |      |      |      
 [6] |    |        |     |     |     |     |     |     |     |        |        |        |        |        |        |        |      |      |      |      |      |      |      |        |        |        |        |        |        |        |      |      |     |     |     |     |     |        |        |        |        |        |        |        |      |      |      
 [7] |    |        |     |     |     |     |     |     |     |        |        |        |        |        |        |        |      |      |      |      |      |      |      |        |        |        |        |        |        |        |      |      |     |     |     |     |     |        |        |        |        |        |        |        |      |      |      
 [8] |    |■■■■|     |     |     |     |     |     |     |■■■■|■■■■|■■■■|■■■■|■■■■|■■■■|■■■■|      |      |      |      |      |      |      |■■■■|■■■■|■■■■|■■■■|■■■■|■■■■|■■■■|      |      |     |     |     |     |     |■■■■|■■■■|■■■■|■■■■|■■■■|■■■■|■■■■|      |      |      
 [9] |    |        |     |     |     |     |     |     |     |        |        |        |        |        |        |        |      |      |      |      |      |      |      |        |        |        |        |        |        |        |      |      |     |     |     |     |     |        |        |        |        |        |        |        |      |      |      
 [10]|    |        |     |     |     |     |     |     |     |        |        |        |        |        |        |        |      |      |      |      |      |      |      |        |        |        |        |        |        |        |      |      |     |     |     |     |     |        |        |        |        |        |        |        |      |      |      

(nm) 2022/03/22(火) 23:20


返信遅くなり申し訳ありません。
皆様のご協力で完成できました。ありがとうございました。

私なりにもネットで検索して、MOD関数やWEEKNUM関数など調べてみましたが、奥が深くまだまだ勉強が必要そうです。

何度も質問して申し訳ありませんが、同じ条件で2週間ごとにシフト表を作成するにはどうすればよいでしょうか。


2/28(月)〜3/13(日) 塗りつぶし
3/14(月)〜3/27(日) 空白
3/28(月)〜4/10(日) 塗りつぶし
4/11(月)〜4/27(日) 空白

※1週間ごとの時と同じく、月をまたいでも空白と塗りつぶしが交互になるようにしていきたいと思います。

よろしくお願い致します。
(かず) 2022/03/26(土) 20:42


 >6月1日ってどのセルに入っているんですか?
 これについてはどうなんですか。
 >皆様のご協力で完成できました。
 だったら提示されている式を応用してください。
(nm) 2022/03/26(土) 21:22

 >皆様のご協力で完成できました。ありがとうございました。

 どう完成したんですか?

 「月跨ぎ」の話が出ていましたが、「年跨ぎ」は無いのですか?
  いつも元日が日曜とは限らないと思うのですが、大丈夫でしたか?

(半平太) 2022/03/26(土) 21:28


例えば、WEEKNUM(日付,2)に対して、MOD関数の除数が4、剰余が2と3の時に塗りつぶしとかですかね。
既に指摘がありますが、実際の条件に合わせた式は、ご自身で工夫して下さい。
(TKG) 2022/03/26(土) 23:14

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.