dポイントプレゼントキャンペーン実施中!

はじめまして。

Access2003を使っていますが下記2のようなオーダーがきており、うまいやり方が浮かばず困っております。。

<処理内容:例>
1.Access管理している1000件のお客様をA~Eの担当者に指定された数(A:100人、B:500人、C:200人・・・等)で割り当てる。←ここは今もSQLでランダムで割り当ててます

2.翌月同じ1000件を同じ5人に前回と異なる指定したお客様数で割り当てるが、可能な限り同じお客様に前回と同じ担当者が当たらない考慮をする。(※割当比率に偏りがあり、どうしても被る場合は被っても良い)

データのイメージはこのような感じです。
-------------------------------------------------
お客様番号 前回担当者  今回担当者(欲しい値)
0000000   A         B~Eの誰か
0000001   B         AorC~Eの誰か
-------------------------------------------------

営業先の担当決め作業で今まで上記1のランダムで割り当ててたのですが、2の条件が追加しようとしても、どうしても被る場合の考慮などがうまくいかず困っています。。

SQLの記述までなくても、何か良いアイディアレベルでも結構です。
皆さまのお知恵を頂ければ助かります。

A 回答 (2件)

>A~Eそれぞれ毎月上限の件数(≒勤務時間)が決まってるんです。



今はお客様があって担当を決めようとしている感じですが、
A~E側を(毎月上限の件数を)基準にして、
それに対応するお客様をランダムで決める考えではどうなのでしょうか。
    • good
    • 0
この回答へのお礼

おぉっ、逆転の発想ってやつですね!!

A~Eに枠を決めておいて、前担当で優先順位つけてお客様を入れ込んでいく・・・。。確かに行けそうな気がします、やってみます!

ありがとうございました!

お礼日時:2010/12/18 23:37

とある値をランダムに決めるとかぶってしまうので、


被らないパターンをあらかじめ用意しておいて、
それをランダムに決めるような案は?。

A-B-C-D-E 普通に考えれば5人サイクル、
お客様番号を5で割り余りでもって何番目かを決める。
0000000   A
0000001   B
0000002   C
0000003   D
0000004   E
0000005   A
0000006   B

これが次回はこれでない担当になれば良いので
0000000   B
0000001   C
0000002   D
0000003   E
0000004   A
0000005   B
0000006   C
次々回
0000000   C
0000001   D
0000002   E
0000003   A
0000004   B
0000005   C
0000006   D

これでは
とあるお客様に対応するときの、Aの次はB、Bの次はCと
規則的になってしまうので、
このサイクルもランダムにする。サイクルパターンを作る。
A-B-C-D-E
B-C-D-E-A
B-A-E-D-C
D-C-A-B-E
・・・
32通りから選ぶ。
B-C-D-E-A-B-A-E-D-C-D-C-A・・・・・・・
A-B-E-B-D-E-D-C-A-B-A-B-E・・・・・・・
・・・・・・・・
長いスパンで考えたタイプにしても良い。


【お客様に対する対応履歴】前回担当とは違う人にする
0000000の前回担当をふまえて、かぶらないように、次回に対応する担当者選びに使う

【担当者に対する対応履歴】最も対応していない人を次回担当にする
0000000の担当をふまえて、かぶらないように、0000001に対応する担当者選びに使う
A 12/17担当あり サイクルパターンA01
B 12/10担当あり サイクルパターンB05
C 10/11担当あり サイクルパターンC04  → 最も対応していない人
D 11/20担当あり サイクルパターンD02
E 12/03担当あり サイクルパターンE03

いろんな担当パターンを用意して、シフトするのが良いと思います。
5で割って余り、というのは一例です。
たくさん候補を用意しての決め方は何でもいいです。
曜日(月~金)で決めてもいいです。
四半期、半年、1年、2年とか一定期間が過ぎたら構成をシャフルする、
でいいと思います。
システムで決めたら一応被っていないかチェックする。
長期予定表をプリントする。

システム化して単純に行うと規則性に偏って、
例外時に対応しきれないかもしれません。
5人を一時的に4人とか微調整可能があってもいいと思います。

この回答への補足

丁寧なご回答ありがとうございます!
なるほど、、事前に想定パターンを何個か作る方法ですか。

ただ、A~Eそれぞれ毎月上限の件数(≒勤務時間)が決まってるんです。。

A:前月100件⇒今月300件
B:前月800件⇒今月50件
C:前月100件⇒今月450件

なので上記の場合人間が考えると100%重複しないパターンも決めれますが、固定パターン化してしまうと帳尻があわなくなったりしまい困っています。

やっぱり可能な限り、といのは難しいでしょうか・・・(汗)

補足日時:2010/12/18 12:04
    • good
    • 0

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