• ベストアンサー

10人を2人づつ5組にランダムに分けて表示したい。

AからJまでの10人を1組2人づつに分ける組み合わせは COMBIN(10,2)+COMBIN(8,2)+COMBIN(6,2)+COMBIN(4,2)=94通り と思われますが、これら94の組み合わせの中から、任意の1つをランダムに表示出来るようにしたい、できればEXCEL(関数またはマクロ)で。 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.4

>ランダムな順に10人をピックアップ」も人手ではなくパソコンでやって >ほしいのです。 他の方の回答も含めて、そのつもりで回答されていると思いますけれど、何を人手でやるおつもりなのでしょうか? マクロでやるならその通りの処理をOpenイベントで実行すればできますし、関数利用でも別に難しいことではありません。 関数の場合の一例を、説明した手順通りに分解して表示するなら… A1~J1に対象となる名前があるとして A2に =RAND()               :順番のもとになる乱数 A3に =RANK(A2,$A2:$J2)        :乱数を元に順番付け A4に =MATCH(COLUMN(),$A3:$J3,0) :順に並べた時の対称の列番号 A5に =INDEX($A1:$J1,A4)        :乱数の順に並べ替えた名前 を入力して、A2~A5を選択して、右にコピーフィル。 5行目に乱数順に並べ替えた名前が表示されます。 (組み合わせは先頭から2人ずつ) 計算の手順がわかるように、1行ずつに途中経過を表示していますが、実際は途中を省略できますので、あとは適当にアレンジしてください。 (注意)Rankを使用しているので、乱数値がたまたままったく同じ値だとうまくいきませんが、RANDは実数になるので、そのようなことが起こる確率は非常に少ないと考えてよいとしています。

tguyip
質問者

お礼

本題の内容について私の説明が不十分だったため、回答者の方々に真意を伝え切れず、申し訳けありませんでした。 今回のfujillinさんの回答は、私の質問に完全にこたえるものであることを実際にその通りにトライした結果、確認出来ました。 本当に有難うございました。

その他の回答 (3)

  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.3

1つの組み合わせだけを選択すれば良いのであれば、全部の組み合わせを前もってリストアップしておく必要はないのではないかな? 例えば、ランダムな順に10人をピックアップして、選んだ順に最初の2人を一組目、次の2人第二組…としてあげれば、結果的に全体の中からランダムに組み合わせを1つ選択したのと同じになるはずでは?

tguyip
質問者

お礼

>全部の組み合わせを前もってリストアップしておく必要はないのではないか< そうです、「全部の組み合わせを前もってリストアップする必要はなく、そのなかの任意の1つの組み合わせ(2人X5組)を人手を介せずに表示いたいのです。 >ランダムな順に10人をピックアップして、選んだ順に最初の2人を一組目、次の2人第二組…< 「ランダムな順に10人をピックアップ」も人手ではなくパソコンでやってほしいのです。 あるところまで人手と介する方法は、実践的には有効かもしれませんが。ここでは、RUNするだけで自動的にランダムにピックアップされた10人(5組)を表示してほしいわけです。

  • Tasuke22
  • ベストアンサー率33% (1799/5383)
回答No.2

直感的に45通りかな? 十分表に収まるので簡単ですね。

tguyip
質問者

お礼

質問の内容について私の説明が不十分だったため、Tasuke22さんには真意を伝え切れず、申し訳けありませんでした。 表に収めると多分45通りと思いますので、後ほど確認したいと思います。ただ、45通り全部を表に出すのが目的ではなく、F9を押す度にその45通りのどれか1つが表記されればいいのです。 有難うございました。

  • koko_u_u
  • ベストアンサー率18% (216/1139)
回答No.1

すべての場合を Excel に一列に書いて、ランダムに選べばいいのでは? # そもそも 94組なのか?

tguyip
質問者

お礼

私の説明が不十分だったため、koko_u_uさんには真意を伝え切れず、申し訳けありませんでした。 この問題は、最新回答で解決しましたが、後ほど「すべての場合を Excel に一列に書いて」見たいと思います。多分94通りではなさそうです。ただ、「全部を書き出す」のが目的ではなく、F9を押す度にその中の「どれか1つがランダムに表記」されればいいのです。 有難うございました。

関連するQ&A

  • Excel 2002 COMBIN関数とGCD関数の組み合わせでおかしな値になる

    Excel 2002を使用しています。 COMBIN関数(組み合わせ)とGCD関数(最大公約数)を組み合わせてつかうと、時々異常な値が表示されて困っています。 いつもではないところがとくに困りものです。 例1: GCD(COMBIN(17,9),COMBIN(15,7)) 例1のとおりにセルに入力すると2と表示されます。(本来は715が表示されるはず) こればGDC関数の中のCOMBIN関数を他のセルに入れ、そこを参照するようにしてもかわりません。 例2:GDC(24310,6435) 例2のように入力すると715が表示されるのでCOMBINが異常なのかもしれませんが、COMBIN(17,9) と COMBIN(15,7) をそれぞれ単独で表示させると ちゃんと 24310 と 6435 が 表示されます。 この現象(バグ?)をどうにか回避する方法をご存知のかたはいらっしゃるでしょうか? 他のバージョンのExcelでもそうなるのかどうかは確認できていません。

  • Excel2002 ランダムに並べ替える関数

    Excel2002で掛算九九の100マス計算を作っています。 マクロを使って、ボタンにマクロを登録し、九九の問題を作成したいのです。 1~10の数字をランダムに重複しないように、A1:J1に表示したいです。 A B C D E 1 9 7 8 1 2・・・ 2 2 3 8 4 1 5 4 でA1:J1の1~10の数字ををランダムに並び替えたいのですが、そういった関数はありますか? RANDBETWEEN関数を使ってみたんですが、重複する数字が返ってきてしまいます。 何か良い方法はありますか?

  • javascript ランダム表示

    2回目になります。前回はお世話になりました。 忙しなく、気は引けるのですが、是非教えてもらいたいことがあり質問させていただきます。 やりたいことは、画像が6枚、6枚とあって 上下に2組ずつ表示させます。ただしランダムとはいえ、画像の組み合わせは決まっており、A+B C+D というのは固定という前提で。 画面のイメージとしては 上 画像A + 画像B 下 画像C + 画像D これを、一定時間ごとに  上 画像E + 画像F → 画像A + 画像B(ランダム) 下 画像G + 画像H → 画像I + 画像J (ランダム) E+FとかC+Dは固定ですが、上下で時間ごとに切り替わった時に表示される画像はランダムにしたいのです。A+BやL+Mなどどちらかでるかはランダムといった感じ。 順番どおり、表示させるのは成功したのですが、こちらも是非表現したく、質問させてもらいました。どうか宜しくお願いします。

  • 【エクセル】ランダムで重複しない整数を出したい。

    Windows 7、エクセル2007です。 ランダムで重複しない整数を任意の範囲から一部のみ入力するにはどうしたら良いでしょうか? 1.任意の範囲「1~50」とか「1~100」とか「15~300」とかから、20個だけとか40個だけとか。 2.ランダムなので「2,6,3,4,8,1・・・」とかのn、n+1、n+2ではないランダムな整数。 3.重複しないこと。 上記1~3を満たしたやり方ってありますか? 出てこない数があっても良いんです。 例えば、1~10までの範囲でランダムに3個だけセルに入力したいとき。 A1に7、A2に4、A3に9というふうに。 それが1~300の範囲で50個の数字をランダムに重複しないように入力する。 A1に15、A2に163、A3に92、・・・A50に43。 残りの250個の数字は入力されないという感じです。 乱数だと重複します。 ランク(順位)と組み合わせると、連続(n、n+1、n+2)になってしまいます。 列はどこでも良いんですが、行は連続したいです。 A1~A50とか、A1~A300とか。 関数の組み合わせでできないでしょうか? また、マクロは分からないので、詳しく解説して頂けると助かります! 情報が不足する点がありましたら指摘して下さい。 追加します。

  • ランダム関数で任意の桁数のランダム数字を作りたい

    エクセル2000ユーザーです。ランダム関数を使い、重複を許さない5桁のランダム数字を1000個作りたいと思っています。randbetween関数を使おうと思ったのですが、2000では使えないのか、NAMEといったエラー表示がでます。5桁の中は同じ数字がでてきても構いません。例:11295、43634、70676・・・etc。 が、1000個の中では同じ数字が重複しないようにしたいです。 =RIGHT(RAND(),5) のように考えたのですが、他にいい方法はありますでしょうか? マクロやVBAは苦手なので、できれば関数でいいやり方があれば教えてください。

  • エクセルでランダム表示したい

    エクセルのセルA1からセルA20までとか「MM/DD/YYYY hh:mm:ss」の形式でランダム表示させる関数なんてあるでしょうか? できれば、3月1日~5月31までとか期限を制限してランダムに表示できたらうれしいです。

  • ランダム画像を2枚一組で並べたい

    以下の点について知りたかったので書き込みします。 10個の画像を2枚一組でランダムに整列させたいです。 ■B □B ■A □A ■C □C ■E □E ■D □D 図のようにランダムにならんだ■に対して、それとセットになっている□が横に並ぶようにしたいです。 画像は外部読み込みにするつもりです。 似たような質問・解答されているものもありますが、一枚づつ表示というものが多く、それを全部表示させるものへの応用の仕方が判りませんでした。 FLASHMX2004、ActionScript2.0です。 宜しくお願いいたします。

  • 2件一組の文章をランダムに表示する。

    お世話になっております。 早速ですが、A~Dの文章を2件ランダムに表示させたいです。 更新の度に表示される文章を変えたいのです。 ランダムに文字を並べ替えるコトは出来たのですが、 ソコから2件だけ抜き出すのができません。 <script language="javascript"> arr = ["ほげほげA","ほげほげB","ほげほげC","ほげほげD"]; function a(){ for(i=0; i<arr.length; i++){ k = i; k = Math.floor(Math.random()*arr.length); tmp = arr[i]; arr[i] = arr[k]; arr[k] = tmp; } } function b(){ a(); for(j=0; j<arr.length; j++){ document.write(arr[j]); } } b(); </script> ■1回目 ほげほげC ほげほげA ■2回目 ほげほげA ほげほげD のような感じです。 ご助力お願いいたします!

  • Excelで文字列のランダム表示

    当方、Excelは簡単な関数を使うレベルです。 マクロはほとんど使用した事が無く、 VBAは使用したことがありません。 最終的な目標は 同一の問題に対して、回答はランダムな答えを選択を用意するという物です。 例えば A1に問題 A5-E5に  L1ーL40の一覧に用意した文字列をそれぞれランダムに入れるという形にしたいと思っています。 現状では答えがかぶってしまっても良いです。 最終的にはボタンで更新となれば理想です。 関数、マクロの使用、VBAの使用でも良いのですが、 できるだけ簡単な方法を探しています。 RAND関数・乱数生成など考えましたが、 考え方が間違っているのか、今の所上手く出来ません。 大変恐縮ですが、何を使用して行うのか、 また、手順を教えていただけると嬉しいです。

  • エクセル指定した範囲からランダムで一つ抽出

    エクセルの関数についての質問なのですが、 B1~B5に値がならんでいたとして、B1~B5の中からランダムに一つ抽出したものをA3に表示する関数はありますか?

専門家に質問してみよう