| 
    
     |  | ひよっこ さん、IROCさん こんにちは。
 シートにデータを入力して、数式でも出来そうなんですけどね・・・。
 
 >VBA初心者です。
 >プログラムの組み方がわからないので教えてください。
 >よろしくお願いします。
 >
 >例えば・・・
 > まず、1〜5の中から解答を出すような、5択問題を与えられた回答者20人のグループ中から、1,2,3と回答した人だけを選出します。
 >その人数が10人いるとすると、さらにその中から一人だけを乱数を使ってランダムに選出し、その人が出した答えと同じ回答をした人が全体でどのくらいの割合なのかを調べるためのプログラムを作りたいと考えています。
 この例題を取り上げると・・・。
 新規ブックのアクティブシートに以下のように20人の回答結果をA列、B列の2行目から(1行目見出し)入力します。
 
 A    B     C
 1  氏名   回答   サンプル回答
 2   a    2
 3   b    5    占有率
 4   c    5
 5   d    2
 6   e    2
 7   f    4
 8   g    1
 9   h    3
 10   I    1
 11   j    4
 12   k    3
 13   l    3
 14   m    4
 15   n    1
 16   o    3
 17   p    4
 18   q    2
 19   r    5
 20   s    4
 21   t    2
 
 セルC2は、サンプリング回答値、セルC4は、その回答の割合だとすると、
 セルC2には、
 「=INT(RAND()*3)+1」という数式(回答1,2,3をランダムに取得)。
 
 セルC4には、
 「=COUNTIF($B$2:$B$21,C2)/COUNT($B$2:$B$21)」
 
 と言う数式。
 
 F9を押すたびに再計算されますから、サンプリング回答値が変わり、よって、割合も変わります。
 
 こんな方法ですが、例題の結果は得られると思うのですが・・・。
 
 |  |