[[20240416101411]] 『休みが不定休の場合の当番表作成』(ののむ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) |

| 全文検索 | 過去ログ ]

 

『休みが不定休の場合の当番表作成』(ののむ)

当番表をエクセルで作成したいです。

A列:日付(日のみ表示、A1セルに年、B1セルに月を入れると自動で変わるように設定)
B列:曜日(月を変えると自動変更)
C列〜F列:当番内容(休みを除いて当番者がローテーションするように)
H列:当番者の順番(1〜20:全20名)
I列:当番者名(全20名)
J列:"休み"(名前定義、なお休みは火・日固定で月・祝が休みの場合もある(※常時休みとは限らない)、という「不定休」になります。)
なお、それぞれ3列目から値が入力されております。

C1には前月最後の担当者をプルダウンで選べるようにし、C3から下に"休み"以外のセルに当番者名を表示させたいです。

似た用途で作成した土日祝が休みのファイルでは、C3セルに下記関数を入れておりましたが、今回作成したい分は不定休になるためWORKDAY関数を使わずに組みたいです。

=IF(WORKDAY(A3-1,1,休み)=A3,INDEX($I$4:$I$8,MOD(NETWORKDAYS($A$3,A3,休み)+INDEX($H$4:$H$8,MATCH($C$1,$I$4:$I$8,0))-1,20)+1),"")

なにか方法はございますでしょうか?
お知恵を拝借したく、何卒よろしくお願いいたします。

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


 >それぞれ3列目から値が入力されております。
 3行目からですね?

 >=IF(WORKDAY(A3-1,1,休み)=A3,INDEX($I$4:$I$8,・・・ 
 20名もいて、3行目からなのに何故 $I$4:$I$8(4行目から8行目まで)なのですか?

(半平太) 2024/04/16(火) 11:36:10


半平太様

ご指摘ありがとうございます。
失礼いたしました。下記が現在入力しているものになります。

=IF(WORKDAY(A3-1,1,休み)=A3,INDEX($I$3:$I$22,MOD(NETWORKDAYS($A$3,A3,休み)+INDEX($H$3:$H$22,MATCH($C$1,$I$3:$I$22,0))-1,20)+1),"")
(ののむ) 2024/04/16(火) 13:07:54


 C3セル =IF(NETWORKDAYS.INTL(A3,A3,"0100001",休み),INDEX(I$3:I$22,MOD(NETWORKDAYS.INTL(A$3,A3,"0100001",休み)+MATCH(C$1,I$3:I$22,0)-1,20)+1),"")
 下にコピー

(半平太) 2024/04/16(火) 13:16:12


半平太様

ありがとうございます。
無事できました。
(ののむ) 2024/04/16(火) 14:26:08


コメント返信:

[ 一覧(最新更新順) ]


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