No.3ベストアンサー
- 回答日時:
こんにちは
前回の回答で、均質化する方法をご提示しましたが、それを理解したうえで敢えて
>(休み考慮あり、ランダム) → (休み考慮、完全ランダム)
>また当番は完全ランダムになるようにしたいです。
と「完全」を強調していることから、『ご提示の条件以外は一切手を加えず、ランダムであること』が重要であるものと解釈しました。
添付図では10~27行に、A列に18人の名前(あああ等で仮置き)とB列以降に都合の悪い日を「×」印で入力してあります。
上記に基づいて、3~8行にランダムに選定された当番者名が表示されます。
図では、仕組みとしてB3セルに
=INDEX($A:$A,AGGREGATE(15,6,ROW($A$10:$A$27)/(B$10:B$27="")/(COUNTIF(B$2:B2,$A$10:$A$27)=0),RANDBETWEEN(1,COUNTBLANK(B$10:B$27)-ROW(A1)+1)))
の関数式を入力し、B3:B8にコピー、更に、B3:B8を右方にフィルコピーしてあります。
※ 欠点としては、(No2様も指摘なさっていますが)ランダム関数を使用している関係から、ブック内でセルの値を変更すると再計算が発生して、全体がランダムに変わってしまいます。
(ブックを閉じて、新たに開いても再計算が発生します)
※ 上記を避けて値を固定したければ、3:8行を選択してコピー、「値をペースト」で固定値化することで値は変わらなくなります。
No.2
- 回答日時:
申し訳ありません。
ややいい加減ですが、参考にしてください。
回答ではなくアドバイスになります。
C2=XLOOKUP(SMALL(C$9:C$26,$B2),C$9:C$26,$B$9:$B$26,"err",0,1)以下c3,c4,c5,c6,c7も同様
C9:T26まで、=RAND()
A9:A27は各人の1月の当番回数をカウント「=COUNTIF($C$2:$AG$7,B9)」しています。
ランダムなので回数も大小あります。長期間継続すれば平均に収束します。
問題点
①=RAND()は、セルをいじるたびに変わるので、当番表も変わる。
②現時点では、休暇に対応していない。
マクロ(VBA)で組めば、①②の問題は解消しやすいでしょう。
C++やjavaでも簡単に組めそうです。
No.1
- 回答日時:
申し訳ありません。
回答ではなくアドバイスになります。
・・・本題・・・
業者に作成を委託することを薦めます。
業務として考えていらっしゃるのであれば、有料で作成委託を受けてくれるサイトの利用を薦めます。
・・・余談・・・
自分も日勤と夜勤の勤務表を自動化できないか考えた時期がありました。
結果として、条件が多すぎて自動化は無理と判断しました。
突然の ”勤務日の変更” が生じた時の影響がとんでもなく大きくなるのです。
例:
平日日中は1人
平日夜間は2人
休日日中は2人
休日夜間は2人
夜勤明けの日に次の夜勤入りはさせない
同じペアでの連続勤務は避ける
労働時間の偏りは最小限にする
たったこれだけの条件でも突然の勤務日の変更が生じた場合、
自動化をしていると取り返しがつかないくらい全体のスケジュールが変わる。
それを補償するのは並大抵の事ではない。
ちなみに質問にあるだけの条件のモノなら、数時間もあれば自分は作れるんじゃないかな。まあ、実際に作ってみないと分からないけどね。
当然ながら、他に突然の ”勤務日の変更” など、条件が追加されない事が前提です。
そんなわけでポンと出来上がったものをお渡しできるような簡単なものではありません。
そして作ってお渡しできたとしても、不具合があっても修正はできません。
どのくらいの時間をロスし、どれだけの影響がありますか。
また、業務時間を使って自身で作る場合、作成に当てた時間は本来の仕事ができないのです。いくらの損失になりますか。
そんなですので、お金を払って委託することを薦めているのです。
委託のポイントは、
・メンテナンス。
・作成時間にかかる労働時間の損失。
です。
上司に話を付けるのであれば、金銭の話は重要になりますよ。
・・・自力で作るためのアドバイス・・・
こういうものは「アルゴリズム」を考える必要があります。
要は「考え方」です。
現在、質問者さんはどのようにして割り当てていますか?
いままでは質問者さんの仕事ではなく他の人が担当していたのであれば、前任者にその「考え方」を教えてもらってください。
それが無いと絶対に作れません。
そこで質問者さんは、件の勤務表を作るうえで何が分かりませんか?
自力で作成する場合は、そういった点を考えて一つずつ問題を解決していきましょう。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルで当番表を作成したいです。 1 2023/08/09 19:53
- Excel(エクセル) 当番表の作成 2 2022/06/15 07:40
- その他(Microsoft Office) 従業員増減対応で当番種類の増減対応な当番表 21 2022/07/19 07:30
- Excel(エクセル) エクセルで不可日と祝祭日の考慮してランダムに毎日の当番表を作成したいと思っています。 1 2023/07/12 21:14
- 数学 確率の問題の考え方を教えてください 6 2023/07/16 23:19
- Excel(エクセル) 月曜だけ3人火水木金は2人の当番を9人で回す当番をExcelで作りたい 4 2022/04/11 21:07
- 会社・職場 職場のシフト変更について 正社員で働いています。 私の職場では月間シフトが作られた後に、数日単位で日 4 2022/12/05 05:18
- 会社・職場 遅刻防止対策 教えてください… 4 2022/04/09 11:54
- Excel(エクセル) EXCEL 指定した曜日に番号を振って、最大値までいったら1に戻る当番表 5 2022/07/20 16:46
- 知人・隣人 一軒家、ゴミ捨て場掃除当番について。 一軒家に住んで5年になります。年に2回ほどゴミ捨て場の掃除当番 2 2022/05/21 10:53
このQ&Aを見た人はこんなQ&Aも見ています
-
賃貸で可能な古民家風レトロな部屋作りのコツ!改めて知る畳の高い機能性と魅力も紹介
畳の部屋を雰囲気のよい部屋に仕上げたい!賃貸住宅でもできる古民家風のレトロな部屋作りのコツを伺った。
-
エクセルで少し複雑な当番表を作成したい。
Excel(エクセル)
-
エクセル 当番表の作り方 エクセルで土日祝日を除いた、平日のみの当番表を作りたいです。 カレンダーま
Excel(エクセル)
-
エクセルで不可日と祝祭日の考慮してランダムに毎日の当番表を作成したいと思っています。
Excel(エクセル)
-
-
4
エクセルでシフトをランダムで作るにはどうしたらいいでしょう
固定IP
-
5
エクセルで当番表を作成したいです。
Excel(エクセル)
-
6
従業員増減対応で当番種類の増減対応な当番表
その他(Microsoft Office)
-
7
エクセルの当番表を作っていますが教えてください
Excel(エクセル)
-
8
仕事のシフトを組むときに、シフトが同じになる回数を均等にしたいんですが
Excel(エクセル)
-
9
Excelにて年間の当番表作成したい
Excel(エクセル)
-
10
エクセルで作成したカレンダーに「当番の名前」を自動的に入力する方法をお
その他(Microsoft Office)
-
11
当番表を作りたい
Excel(エクセル)
-
12
当番表の作成(休み考慮あり、ランダム)
その他(コンピューター・テクノロジー)
-
13
人員ペア一覧表を作成したいです。
Excel(エクセル)
-
14
エクセル 年間の当番表 ローテーションに振り分ける方法がわかりません。
Excel(エクセル)
-
15
当番表の作成
Excel(エクセル)
-
16
Excel 掃除当番をランダムに1名抽選
Excel(エクセル)
-
17
ExcelのVBAでシフト表を作っていますが、詰んでいます。
Excel(エクセル)
-
18
VLOOKUP関数を使い掃除当番表を作る
その他(Microsoft Office)
-
19
C列にF列の担当者(A〜)を順番に入れて、当番表を作りたいです。 C列にいれる数式を教えてください。
Excel(エクセル)
-
20
エクセルで旗当番表を作っています あとひといきなんですができません
Excel(エクセル)
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルの関数について教えて...
-
Excelカスタム関数(アドイン登...
-
Excelデータをコピペして、ペー...
-
Excel関数-文字列で自動作成さ...
-
スプレッドシート、Excelでの数...
-
Excelで50個のセルに同じ文字を...
-
Microsoft Officeの中古は信用...
-
スプレッドシートで使う数式を...
-
エクセルVBA、別ブックへ転記す...
-
エクセルで会社の従業員のデー...
-
エクセルで不等号記号(≠)が上に...
-
エクセルの表で1年間の曜日を...
-
A列とB列を参照してC列に連番を...
-
エクセルの空欄をつめて、次の...
-
エクセルでの特別な文字を上に...
-
エクセルでセルに標準で入力さ...
-
エクセル日付 文字列の関数がエ...
-
エクセル2013で月間勤務表から...
-
エクセルの日付を編集する
-
EXCELの質問です 119から足した...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルVBA、別ブックへ転記す...
-
エクセルでの作業計算方法について
-
時間によってファイル名が変わ...
-
【関数】適切な文字数の数字を...
-
Excelについて教えてください
-
エクセル初心者です 関数の入れ...
-
【マクロ】ファイル名の変更に...
-
UNIQUE関数が使えないバージョ...
-
エクセルの計算
-
【関数】先頭だけにある、半角...
-
Excelで、決まった行を繰り返し...
-
Excelでセルの値が同じか...
-
LOOKUP関数を使えばいいのでし...
-
Excel
-
はがきについて。
-
エクセルの条件付き書式につい...
-
エクセルのデーターが2か月前の...
-
エクセル②
-
エクセルで「-0.0」と表示さ...
-
Microsoft1Officeの互換ソフト...
おすすめ情報