2023/01/10 22:07 更新
トップページに移動| 前のページに移動次のページへ |

7.不可勤務を複数指定


「早出および遅出」のような複数の勤務を不可

ここでは、「早出および遅出は不可」のようにな複数の勤務を不可条件とします。

複数の不可勤務を指定は、「2,3」のように不可の勤務番号を並べて記述します。
現状、カンマは不要ですが、勤務種別が10個以上になると処理上、必要になります。
また、最終的には分りやすく「早,遅」のような記述形式になります。

ここで入力した不可勤務の項目が、
(自動で割り当てる)勤務シフト表の項目と一致しないことが制約条件となります。

下図では、「不可勤務一致数」が「」であることが追加される制約条件


数式の意味


{=COUNT(IFERROR(SEARCH(C4:I8,R4:X8),""))}

配列数式として設定

 -作業表を使う場合、不可勤務表と同じ大きさの表がもう一つ必要になる

SEARCH関数で不可勤務表の項目内からシフト表の項目が含まれる位置を調べます。
含まれていたらその位置、含まれていなかったらエラー#VALUE!
エラーが出るとカウント出来ないので、IFERROR関数でエラー時は空白として置きます。

以上を配列数式として式を立てると、各セルに対応して(元の表と同じ大きさの)検索結果の数値配列ができます。
それをCOUNT関数でカウントすると、一致した項目数が得られます。

シフト表作成シミュレーション

1.初期化


勤務シフトを(緑枠内)をすべてクリアします。

.2.ソルバーによる人員配置

データ」タブ「ソルバー」からソルバーを起動します。
下図のようになっていることを確認(違っていたら下図のように入力)



下図が結果


3.均等再配置

アドイン」タブから、「均等再配置」を起動し、下図のように入力します。




実行すると、



なかなか良好な結果が得られました。



入力する勤務が数値では、大変、分かりにくいですね。



次の課題は、入力方法の改良

次項では、マクロが登場。
ダウンロードファイルが異なり、ブックが異なります。


新しくダウンロードし、マクロを有効にしてブックを開いてください。

トップページに移動| 前のページに移動次のページへ |

関連

×
ページ先頭 ☆:DL File
 シフト表自動作成トップ ☆
 1.単一勤務種別の自動割当
 2.複数勤務種別
 3.連続勤務不可条件
 4.不可条件
 5.均等化-ソルバー
 6.均等化-均等再配置アドイン
 7.不可勤務を複数指定
 8.勤務指定方法の改良
 9.自動化
10.不可勤務入力改良
11.人数の可変化・全自動実行
12.予約勤務
14.連続休み日数の制限
15.連続勤務日数の制限
16.前旬データを考慮
17.入力チェック
18.実行速度改良&汎用化
19.過去勤務状況を反映
20.2週間7人制拡張版
21.予定勤務日数
22.手動調整