プロが教える店舗&オフィスのセキュリティ対策術

現在シフト表を作成していて、以下の動作をするマクロを考えています。
素人のため、詳しい方がいればご教授頂けませんでしょうか。。。

ユーザーフォームには
・対象者:10名(複数選択)
・勤務形態:早番、遅番など(単一選択)
・日当たりの必要人数:1~5(単一選択)
・勤務割り当て開始ボタン
上記の3つのListBoxと1つのボタンがあります。

考えている要件は
・選択された対象者に対して、対象者の合計で割られた数だけ勤務形態が割り当てられ、勤務が均等になるようにします。
・割り当て方は1か月分(31日)で、その中からランダムな日にちに選択された勤務形態が割り当てられます。
・すでに勤務形態が入力されている項目についても考慮します。
 (例えば、月5回必要な場合、3回すでに入力されていれば、残り2回分を割り当てる。)
・日当たりの必要人数については、1~5から選択し、一日当たりの同一勤務の人数を選べるようになっています。

尚、シフト表は縦:勤務者、横:月カレンダーになっています。

そもそも要件が多すぎてできるかも微妙かと思いますが、一部分でもわかる方がいれば、よろしくお願いします。

A 回答 (1件)

はじめまして、通りすがりと申します。


上記仕様についてなのですがやろうとしていることが
見えません。もう少し仕様を整理してからご質問しては如何でしょうか?

たとえば、ここです。
>ユーザーフォーム(ListBox)からのランダム入力
 ランダムで入力という表現は、ランダムで自動で選択されることを
 言っているのでしょうか?それとも人が自由に選べるからランダム
 という表現にしているのか?
> フォームの項目にて
>・日当たりの必要人数:1~5(単一選択)
入力フォームに日当たりの必要人数とあるがその他項目内容は人につい
ての属性であり、日当たりの必要人数は日毎の属性と思えます。
これは、最終的に作成する帳票からそう想像できますが、では何故
人の属性のフォームの中に、日当たりの必要人数設定項目があるのか?
->作成してくる段階で矛盾が生じてこないか?

また、要件にて
>選択された対象者に対して、対象者の合計で割られた数だけ勤務形態
>が割り当てられ、勤務が均等になるようにします。
 意味不明です。

また、質問の内容も漠然としていて今自分がそれぞれの機能について
どの機能について取り組んでおり、それについて現在どのように考え
どう対策を講じているが、それによってどのうような問題に直面して
いるのかが見えません。
回答者もどう答えたらいいか、解らないと思います。

多分、作成したいものが漠然としていて、どのように進めていけば
よいのかが解らなくなっているものと推測します。
このような場合は、まず仕様をしっかりと作成する。
これは、画面イメージ、帳票イメージ、アクション、項目の整理
アクション毎にどのような動きをさせるのか?
誰が見ても理解できるように記述します。
それから、個々の機能について方式(プログラムの概要レベルでもい
いので)を検討する。
次に検討した機能レベルから実際にコードに落としていく。
その中で、壁にぶつかったらその問題点を分類しご質問した方が
早く解決に結びつくと思います。
結構上記方法も大雑把ではありますが、今の段階よりは見えない
ものが見えてくると思いますのでその段階で再度ご質問したほうが
よいと思います。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!