質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.31%

Q&A

解決済

1回答

6013閲覧

エクセル 役割分担表 月ごと

hiroshiorz

総合スコア15

0グッド

0クリップ

投稿2018/12/13 10:16

編集2018/12/13 13:43

イメージ説明

前提・実現したいこと

月ごとに「図書」「掲示板」「消耗品」「物品A」「物品B」の役割を担当します
スタッフが同じ月に2つ以上の係を担当することはありません
2行目の数字はその係に必要な人数です。

スタッフ数、係の数、必要な人数は変動しても対応できるようにしたいです。

スタッフの各係の月決めを均等に行いたい。
休みの数や担当回数という意味で。

行っていること

必要な人数が2の場合 2*12ヶ月で24人のスタッフが必要になるので
1,1,2,2,3,3,4,4,5,5・・・のように連続して割り振りをしてみたが係が4つ目のところでスタッフ13が1月に2つの係を担当することになるので、改善必要です。

意見がほしいのは

振り分け方法の案がほしいです。

乱数やランクを使って出すのも良いのかと思いましたが今ひとつ方法がわからず苦戦しています。

未熟で伝わりにくい部分多々あると思いますがお力をおかしください。

補足

d5:af40に役割担当の月が入ります

追加 

現時点でスタッフは36名います。しかしスタッフの数は前後する恐れがあります。

図書は2人必要なので2*12ヶ月で24人のスタッフが必要
上12人を休みにしスタッフ13から1,1,2,2,とふっています。
掲示物も2人必要なので2*12ヶ月で24人必要ですが図書でスタッフ1〜12は休みなので休みがかぶらないようにスタッフ13〜24を休みにしスタッフ25からはじめスタッフ12まで振り分けています。

まず休みの確保をすることで休みの均等は行っていますが、月がかぶってしまうという壁にぶち当たっております。

休みの数の算出は
mod関数を使い
必要人数*12ヶ月をスタッフの人数で割った時のあまりの数で出しています。

現在36名で図書の場合2*12=24
24÷36=0あまり24
36−24=12
12人が休みというような算出です

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hiroshiorz

2018/12/13 11:58

関数希望ですが関数のみでは難しいならVBAも考慮しています!
papinianus

2018/12/13 12:15

理解力なくて申し訳ないのですが、提示された図において、図書や物品Aの7月以降や、掲示物の6月以前はどうするのでしょうか。また、物品Bが折り返されて半分までしか来ていないことからわかるとおり、作業項目かける人数(つまり要求人月)が、スタッフ人数の倍数ではない場合が想定されます。このへんは仕様としてどう解決するのですか?(要求人員がスタッフ人数の倍ではないということはどんなに平均化しても、スタップ1さんとスタッフ24さんの間で1月分の負担の違いがでる可能性が回避できません。端数の出方によっては、2年間で平均化されることさえ保証できません)
hiroshiorz

2018/12/13 12:31

失礼しました。 画層は参考にと思い途中で切れているものを送ってしまいました。 現時点でスタッフは36名います。しかしスタッフの数は前後する恐れがあります。 図書は2人必要なので2*12ヶ月で24人のスタッフが必要 上12人を休みにしスタッフ13から1,1,2,2,とふっています。 掲示物も2人必要なので2*12ヶ月で24人必要ですが図書でスタッフ1〜12は休みなので休みがかぶらないようにスタッフ13〜24を休みにしスタッフ25からはじめスタッフ12まで振り分けています。 まず休みの確保をすることで休みの均等は行っていますが、月がかぶってしまうという壁にぶち当たっております。
hiroshiorz

2018/12/13 12:38

休みの数の算出は mod関数を使い 必要人数*12ヶ月をスタッフの人数で割った時のあまりの数で出しています。 現在36名で図書の場合2*12=24 24÷36=0あまり24 36−24=12 12人が休みというような算出です
guest

回答1

0

ベストアンサー

私なら、こんな感じの表を作りますね。
スタッフは不定要素なので、変更が入ったときにリスケしやすいようにします。

スタッフ累計1月2月3月4月5月6月7月8月9月
スタッフ13係A係B係C
スタッフ23係B係C係A
スタッフ33係C係A係B係B
スタッフ43係A係A係C
スタッフ53係B係C係A
スタッフ63係C係A係B
スタッフ73係A係B係C
スタッフ83係B係C係A
スタッフ93係C係A係B

この例だと、4月にスタッフ3が都合悪くなったので、スタッフ4が臨時で入った。
5月にスタッフ3が埋め合わせるって感じで。

ローテーションパターンは、スタッフ数と各係の必要人数を与えてVBAで生成するでしょうね。
変更が入ったときは、担当回数の累計とスタッフの都合を伺って調整するでしょう。

こういうテーブルのほうが実用的だと思いますよ。

投稿2018/12/14 23:32

shozi3

総合スコア691

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hiroshiorz

2018/12/15 02:40

ご回答ありがとうございます! ずっと月を表に割り振ること考えていたので係を割り振るとはいい発想でそのほうが実用的そうですね! これを基にもう一度自分で調整してみます! ありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.31%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問