
Excelにて年間の当番表を作成したいと思っています。
6人で月~土の6日を回し、
祝日は6人のうちから一人、当番対応をする表を作りたいと思っています。
当番表を作るうえでの決まり事は
・Cさんは火曜日固定の為、Cさんを除いた5人で火曜日以外の当番を回す
・Aさんからスタートし、A → B → D → E → Fで1周した場合、次はBさんからスタート、
その翌週はDさんからスタートのような順番で回したい
A →...F → B → D → E → F → A → D → E → F → A → B → E →...のような感じ
・祝日はCさんも入れた6人で順番に対応する
になります。
平日、Cさんは火曜日固定で、残りの5人で火曜以外のローテーションを組む関数、
祝日はCさんも含めた6人でローテーションを組む関数 を教えて頂きたいです。
このようなイメージで と画像を添付しますが、
ローテーション間違ってるかもです…
わかる方いたらよろしくお願いいたします。

No.3ベストアンサー
- 回答日時:
こんばんは
ルールが複雑なのは仕方ないとしても、A~Fのうちのど真ん中のCだけ特別扱いする仕様では、計算式が面倒で複雑になるばかりですね。
ご提示の図で、W列とX列が表示できれば、あとはご自身でできるものと解釈しました。
・祝日を決定する方法が示されていませんので、どこかに祝日リストがあるものと仮定しました。
・祝日の判定も式に含めると更に長くなるので、祝日判定はV列で行うものと仮定しています。
・祝日リストには、名前の定義で「祝日リスト」の名前を付けてあるものとします。
・また、日付は全てシリアル値であるものと仮定しています。
>・祝日はCさんも入れた6人で順番に対応する
とありますが、祝日が日曜の場合はどうなるのか不明ですけれど、祝日当番には当番が表示されるものと解釈しました。
・ご提示の、T5:T10に名前のリストがあって、表示にはそれを参照するものとしています。
◇添付の図では、V2セルに、
=IF(COUNTIF(祝日リスト,U2),"祝",U2)
の式を入れ、書式を「aaa」として曜日表示にして、フィルコピーしてあります。
(この結果、祝日だけ「祝」表示になる点が、ご提示の図とは異なっています)
更に、W2、X2セルに以下の式を入れて、下方にフィルコピーしてあります。
◇W2セルの式
=IFS((V2="祝")+(WEEKDAY(U2)=1),"",WEEKDAY(U2)=3,T$7,1,INDEX(T$5:T$10,MOD(INT((SUMPRODUCT((V$2:V2<>"祝")*(WEEKDAY(U$2:U2)<>1)*(WEEKDAY(U$2:U2)<>3))-1)/5)+SUMPRODUCT((V$2:V2<>"祝")*(WEEKDAY(U$2:U2)<>1)*(WEEKDAY(U$2:U2)<>3))-1,5)+1+(MOD(INT((SUMPRODUCT((V$2:V2<>"祝")*(WEEKDAY(U$2:U2)<>1)*(WEEKDAY(U$2:U2)<>3))-1)/5)+SUMPRODUCT((V$2:V2<>"祝")*(WEEKDAY(U$2:U2)<>1)*(WEEKDAY(U$2:U2)<>3))-1,5)+1>2)))
◇X2セルの式
=IF(V2="祝",INDEX(T$5:T$10,MOD(COUNTIF(V$2:V2,"祝")-1,6)+1),"")
※ 仮定だらけの回答ですが、ご参考までに。
※ 仮定と異なる点に関しては、適宜修正願います。

No.4
- 回答日時:
No.3さんによって既に完成形が示されているので蛇足になりますが、作業列使用に問題がないないら、作業列に平日の当番順一覧を作成すると、数式がより単純になります。
添付画像をご覧ください。
No.3さんも指摘されておられますが、ご質問者が示された図で、W列とX列が表示できれば、あとはご自身でできるものと想像します。
前提条件は以下のとおりです。
(1)日付はシリアル値である
(2)祝日一覧をZ列に作成し、その範囲に「祝日」という名前をつけている
(3)祝日の当番順はT5~T10にある
(4)日曜日の祝日もあるが、法律上「振替休日」があるので、実務上は「振替休日」を「祝日」として取扱うものとする
(5)曜日の表示は、V2セルに
=IF(COUNTIF(祝日,U2),"祝",U2)
という数式を記述。書式を「aaa」として曜日表示にし、下方向へコピーしている
(6)平日の火曜日を除く当番順はA~、B~、C~・・・と開始位置がずれるので、それを一覧にしてしまう方法をとる。AA2~AA6セルに「A、B、D、E、F」(5文字)を1文字ずつ入力し、AA7セルに
=INDEX(AA$2:AA$6,MOD(ROW(A1)+INT((ROW(A1)-1)/5),5)+1)
という数式を記述し、AA26まで下方向へコピーしている(5文字で開始位置が5回変わるので5×5=25セル分必要)
この状態で、W2セルに
=IFS((V2="祝"),"",(WEEKDAY(U2)=3),T$7,(WEEKDAY(U2)>1),INDEX(AA$2:AA$26,MOD(SUMPRODUCT((W$1:W1<>"")*(W$1:W1<>T$7))-1,25)+1),TRUE,"")
という数式を記述し、下方向へコピー
X2セルに
=IF(V2="祝",INDEX(T$5:T$10,MOD(SUMPRODUCT((X$1:X1<>"")*1)-1,6)+1),"")
という数式を記述し、下方向へコピー
これで、W列、X列が表示されます。

No.2
- 回答日時:
月・水が祝日だとしたらCさんが二日連続になってもOK?
それと画像ですけど15日はFさんで翌週頭が先週頭のAさんになるのはどういう理由で?
と言う前に12日のBさんが10日に続いてやるのもどうなのかと思えますし。
B→C→D→E→F→A(翌週)
D→C→・・・
ならまだわかるのですが。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(Microsoft Office) 従業員増減対応で当番種類の増減対応な当番表 21 2022/07/19 07:30
- Excel(エクセル) 当番表の作成 2 2022/06/15 07:40
- Excel(エクセル) エクセルで不可日と祝祭日の考慮してランダムに毎日の当番表を作成したいと思っています。 1 2023/07/12 21:14
- Excel(エクセル) エクセルで当番表を作成したいです。 1 2023/08/09 19:53
- Excel(エクセル) 月曜だけ3人火水木金は2人の当番を9人で回す当番をExcelで作りたい 4 2022/04/11 21:07
- 知人・隣人 一軒家、ゴミ捨て場掃除当番について。 一軒家に住んで5年になります。年に2回ほどゴミ捨て場の掃除当番 2 2022/05/21 10:53
- Visual Basic(VBA) 祝日を除いた月曜から土曜までの1週間分の日付行を選択し、別シートへカットアンドペーストしたい 13 2023/07/13 22:46
- Excel(エクセル) エクセルでカレンダーを作りたい 5 2023/05/16 07:32
- ラジオ ニッポン放送辛坊治郎ズームにて「ゲストが嫌いな人の悪口を言ってしまい、大騒ぎ!」さて、誰? 0 2023/04/04 06:28
- 会社・職場 こんな対応普通ですか? 土日祝休みの部門で、書類選考(5日程度) 4月28日午前に履歴書郵送 ↓ 5 2 2022/05/15 09:12
このQ&Aを見た人はこんなQ&Aも見ています
-
エクセル 当番表の作り方 エクセルで土日祝日を除いた、平日のみの当番表を作りたいです。 カレンダーま
Excel(エクセル)
-
エクセルで少し複雑な当番表を作成したい。
Excel(エクセル)
-
Excelで当番表の作成(休み考慮、完全ランダム)
Excel(エクセル)
-
-
4
C列にF列の担当者(A〜)を順番に入れて、当番表を作りたいです。 C列にいれる数式を教えてください。
Excel(エクセル)
-
5
エクセル 年間の当番表 ローテーションに振り分ける方法がわかりません。
Excel(エクセル)
-
6
当番表の作成について
Excel(エクセル)
-
7
エクセルで当番表を作成したいです。
Excel(エクセル)
-
8
エクセルで作成したカレンダーに「当番の名前」を自動的に入力する方法をお
その他(Microsoft Office)
-
9
エクセルの当番表を作っていますが教えてください
Excel(エクセル)
-
10
エクセルで旗当番表を作っています あとひといきなんですができません
Excel(エクセル)
-
11
エクセルで不可日と祝祭日の考慮してランダムに毎日の当番表を作成したいと思っています。
Excel(エクセル)
-
12
エクセルの当番表を作りたいのですが
その他(Microsoft Office)
-
13
エクセルで曜日指定のカレンダーを作りたい
Excel(エクセル)
-
14
Excel 数式を入れているため、当番が繰り返し循環しない
Excel(エクセル)
-
15
エクセルで日付の入力で、土日祝を自動的に抜いて、営業日だけ表示したい
Windows Vista・XP
-
16
当番表を作りたい
Excel(エクセル)
-
17
Excelで飛ばし連番
Excel(エクセル)
-
18
エクセル 関数 各人の6日毎にある当番日の表示方法
その他(Microsoft Office)
-
19
人員ペア一覧表を作成したいです。
Excel(エクセル)
-
20
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルのVBAで集計をしたい
-
【関数】同じ関数なのに、エラ...
-
【マクロ】【配列】3つのシー...
-
vba テキストボックスとリフト...
-
Office2021のエクセルで米国株...
-
【画像あり】オートフィルター...
-
【マクロ】実行時エラー '424':...
-
特定のセルだけ結果がおかしい...
-
【マクロ】列を折りたたみ非表...
-
他のシートの検索
-
【マクロ】アクティブセルの時...
-
【条件付き書式】シートの中で...
-
【マクロ】【相談】Excelブック...
-
ページが変なふうに切れる
-
エクセル ドロップダウンリスト...
-
【マクロ】オートフィルターの...
-
【マクロ】元データと同じお客...
-
【マクロ】3行に上から下に並...
-
エクセルのdatedif関数を使って...
-
【マクロ】数式を入力したい。...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
9月17日でサービス終了らし...
-
エクセル
-
【マクロ】WEBシステムから保存...
-
エクセルの循環参照、?
-
エクセル ドロップダウンリスト...
-
エクセルのdatedif関数を使って...
-
特定のセルだけ結果がおかしい...
-
【マクロ】A列にある、日付(本...
-
【マクロ】EXCELで読込したCSV...
-
【マクロ】アクティブセルの時...
-
【エクセル】期限アラートについて
-
iPhoneのExcelアプリで、別のシ...
-
【関数】同じ関数なのに、エラ...
-
Excelの新しい空白のブックを開...
-
【マクロ】3行に上から下に並...
-
【マクロ】宣言は、何のために...
-
VBA チェックボックスをオーバ...
-
Excelについての質問です 並べ...
-
【マクロ】アクティブセルの2...
-
【関数】不規則な文章から●●-●●...
おすすめ情報