- 締切済み
Excel VBAでランク上位から配分する方法
たとえば、1位~5位までの順位を成績順に決めて、賞品3つ(商品の数は毎回変動する)を1つずつ上位から分けたいのですが、vbaで上記を行うにはどのように記述すればよいでしょうか。 イメージは、賞品の数が書いてあるセルがあり(上記の例では3)、そのセルの数値が0になるまで上位から分けていく、というものです。商品の数によっては当たらない人もいます。よろしくお願いします。
たとえば、1位~5位までの順位を成績順に決めて、賞品3つ(商品の数は毎回変動する)を1つずつ上位から分けたいのですが、vbaで上記を行うにはどのように記述すればよいでしょうか。 イメージは、賞品の数が書いてあるセルがあり(上記の例では3)、そのセルの数値が0になるまで上位から分けていく、というものです。商品の数によっては当たらない人もいます。よろしくお願いします。
補足
mt2008様、 ご回答ありがとうございます! 同点は発生しない前提で考えています。 質問では成績順と記載しましたが、 イメージとしては、同点が発生しないように乱数を発生させ、順位付けする。 そしてランキング上位から賞品を分配する。 分配する際のイメージは、a) 賞品5つ以下、1位~5位まで各1名、b)もしくは商品5つ以上、1位~5位まで各1名です。 賞品数分ループ分を回すようにして、賞品がある回数分処理を回して分配したいです。 つたない説明で申し訳ありません。