- ベストアンサー
抽出の関数計算が成立せず、困ってます!
EXCELの関数を使用して、140人の生徒を7グループに分けようとしています。 生徒一人一人には、元々Ai~Niまでの14グループが振られてます(i=1~10)。 振り分けたいグループは7グループなので、 第1グループをA+Bグループ 第2グループをC+Dグループ 第3グループをE+Fグループ としていき、 第7グループをM+Nグループ と振り分けたいと思ってます。 但し条件があり、「A+B」グループに入る生徒は、Ai,Biのが振られていない生徒がランダムに20人入るようにしたいと思っており、「C+D」やその他のグループも同様で、グループ名になるアルファベットが振られていない生徒の中から任意で20人を1グループにするというものです。 使用した関数はVLOOKUP関数とLARGE関数で、その方法は、 【データ基】 A列 B列 C列 D列 10行目 (便宜上の)順位 (生徒の)番号 氏 名 乱数 11行目 1 A1 ●●△△ =RAND() 12行目 2 A2 ■■○○ =RAND() ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ 21行目 11 B1 ▲▲□□ =RAND() ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ 31行目 21 C1 ★★▽▽ =RAND() ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ 150行目 140 N10 ※※◎◎ =RAND() としており、 計算式は次のようにしましたが、上手くいきませんでした。 【グループ分け】 ★A+Bグループ 1人目抽出“=VLOOKUP(LARGE(D31:D150,A11),B31:D150,2,0)” 2人目抽出“=VLOOKUP(LARGE(D31:D150,A12),B31:D150,2,0)” としましたが、結果は、“#N/A”となってしまいます。 また、 ★C+Dグループ 1人目抽出“=VLOOKUP(AND(LARGE(D11:D30),LARGE(D61:D150)),A11,AND(B11:D30,B61:D150),2,0)” としましたが、これについては計算そのものの処理ができませんでした。 どのように計算すれば上手く振り分けられるのでしょうか。 「データ基」ではランダムにしたいとの思いから乱数を使用していますが、無作為に選ぶことができるのであれば、乱数でなくても構いませんし、また、最初に記した条件さえ満たせば、計算ごとに結果が変わっても差し支えありませんし、どのような関数を用いても差し支えありませんが、プログラミングはできないので、関数のみで処理したいと考えてます。 どうかお知恵を貸してください。 よろしくお願いいたします。
- みんなの回答 (4)
- 専門家の回答
お礼
有難うございましたっ!!! できましたっ! 相変わらず関数の内容の理解には至っていませんが、数式を右列にオートフィルドラッグして数式内で不足しているセルを加算し、参照除外範囲を変更していったら、見事に結果を出せましたっ! 昨日「9個しか結果が表示されない・・・」と申しましたのは、G列の数式内の「<=19」としなければならないところを「<=9」としていたため、結果が出なかったと言うことでした。 本当に本当に助かりました! ご尽力いただき、有難うございました。 ところで、これはどうやってベストアンサーを付けるんでしょうか? 一度やってみます。