[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『一週間ごとの当番表をつくりたい』(まめしば)
sheet1のA列に日付、B列に曜日、C列に当番表があるとします。
A列・B列の日付は1月1日から12月31日まであります。
当番は3名(田中→佐藤→鈴木)いて、一人一週間担当します。
C列に田中から始まり、佐藤、鈴木と続き、
鈴木の次は田中に戻るような関数(関数が無理ならVBA)が知りたいです。
土日と祝日は全て抜かすとします。
(別シートに祝日一覧があり、名前定義で祝日としている。)
よろしくお願いいたします。
【イメージ】
A B C
3/31 月 田中
4/1 火 田中
4/2 水 田中
4/3 木 田中
4/4 金 田中
4/5 土 (空白)
4/6 日 (空白)
4/7 月 佐藤
4/8 火 佐藤
< 使用 Excel:Excel2016、使用 OS:Windows10 >
前提:日付は月曜日から始まることとします。
C2: =IF(OR(A2="",B2="土",B2="日",COUNTIF(祝日,A2)),"",CHOOSE(MOD(COUNTIF($B$2:B2,"月")-1,3)+1,"田中","佐藤","鈴木"))
必要数下にコピーします。
(メジロ) 2020/05/01(金) 14:07
>A列・B列の日付は1月1日から12月31日まであります。
C2 =IF(WORKDAY(A2-1,1,祝日)>A2,"",CHOOSE(MOD(WEEKNUM(A2,2)-1,3)+1,"田中","佐藤","鈴木")) 下コピー
参考まで (笑) 2020/05/01(金) 14:46
訂正・・・というのか 年が変わっても前年からの継続にする
2020/1/1 を基準にして
C2 =IF(WORKDAY(A2-1,1,祝日)>A2,"",CHOOSE(MOD(INT((A2-("2020/1/1"-WEEKDAY("2020/1/1",2)+1))/7),3)+1,"田中","佐藤","鈴木"))
参考まで (笑) 2020/05/01(金) 15:27
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.