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

20名の社員の希望を第三希望まで聞くのですが
希望が重複した場合に得点(あるテストの点数)の高い人を優先する
というエクセルの票を作りたいのですが、
どのようにしたら良いかご存じの方はおられますでしょうか。

また、最終的に誰がどの希望になったか
新しい表を新たに張り付ける方法もあれば教えていただきたいです。

A 回答 (3件)

こんにちは



希望は賞品のようなもので、1個しかないので、誰かが得たら他の人は得ることはできないってことで良いのでしょうか。
考え方として、得点の高い人から順に優先的に希望のもの(第何希望でも)を与えてゆくという方式でひとまず割り振ることは可能と思います。
ただし、得点の低い人の場合、すでに優先権の高い人に全部(3個しかないので)の希望品が割り振られているという場合が発生し得ます。

とりあえず、10人のミニチュア版を作成してもみました。
添付図では、1~11行までが得点と第一~第三希望の10名の表としています。
15~25行がこれに基づいた割り振られた結果です。

順序として優先権の高い人の順に並べ替えて処理しています。
(GGGとHHHは同じ得点ですが、名簿順でGGG>HHHとなります)
A16セルに
=IFERROR(INDEX(A:A,B16),"")

B16セルに
=ROUND(-MOD(AGGREGATE(14,6,B$2:B$11-ROW(B$2:B$11)/1000,ROW(A1))*1000,-1000),0)

C16セルに
=IFERROR(OFFSET($B$1,B16-1,AGGREGATE(15,6,COLUMN($A$1:$C$1)/(COUNTIF(C$15:C15,OFFSET($C$1:$E$1,B16-1,0))=0),1)),"")

の式をそれぞれ入力し、A16:C16を下方にフィルコピーしています。

※ 上記でもお断りしたように、希望の偏り方によっては、全部をうまく分けられるとは限りません。
 (端的に言えば、誰にも希望されない品は割り振られることが無い)
※ 結局のところ、人間的判断で割り振ることになると予想しますので、No2様の方法が現実的かと思います。
「エクセルの票の作り方」の回答画像3
    • good
    • 0

手作業でやったほうが速いと思います。


いえ。冗談抜きで。

マジで、そのくらいの処理ならここで回答を待つよりも手作業で処理したほうが速く終わりますよ。
今手元にデータがあるなら、もう終わっているんじゃないでしょうか。

・・・
一つの表にデータをまとめ「並べ替え」をしながらマークを付けていけばいいんじゃないのかな。
そしてそのマークを付けたデータをコピペすれば良い。


・・・余談・・・

「表」と「票」は別物ですので注意しましょう。
    • good
    • 0

データ > フィルター にして



昇順、降順にすれば?
    • good
    • 2

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