• ベストアンサー

エクセルの名簿を円の図形へ表記したい。

エクセルの名簿一覧(名前・住所等)を円形の唐傘連判状のように、流し込んでくれるソフトもしくは方法を教えてください。生徒会の投票で使用したいのですが、エクセル表だと投票が上の段に集中してしまいます。平等な選挙ができるように投票の用紙を円形にしたいのです。  もちろん、毎年立候補者の人数は固定せず、15から20人ほどです。流し込みができれば十分ですが、ランダムに流し込んでくれれば尚うれしいです。ご存知の方がいらっしゃればよろしくお願いします。

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

  • ベストアンサー
回答No.1

要するに、円形はともかく、投票用紙ごとにランダムになっていればいいのではないでしょうか? たとえば5人のとき A列に名前を入力します。 山田 佐藤 田中 近藤 横山 ・印刷シート B1:=RAND() C1:=INDEX($A$1:$A$5,RANK(B1,$B$1:$B$5)) 5行目までコピーします。 A・B列は非表示にしておきます。 再計算ごとに順序が変わるので、F9を押して印刷を繰り返せばランダムな順序の投票用紙が印刷されます。

haruuuuu
質問者

お礼

ありがとうございます。そうですよね・・ソフトに頼るよりそうしてみます。

haruuuuu
質問者

補足

すみません。ご回答いただいた内容なんですけど・・・・。もう少し詳しく教えてください。すみません。エクセル詳しくなくて・・・。

その他の回答 (1)

回答No.2

>すみません。ご回答いただいた内容なんですけど・・・・。もう少し詳しく教えてください。すみません。エクセル詳しくなくて・・・。 ええと、どのあたりが分からないのか分かりませんので、ひとまず一通り説明し直してみます。 まず、A1セルからA5セルに、立候補者の名前を入力します。 山田 佐藤 田中 近藤 横山 ここは問題ないと思います。 次に、B1セルに以下の数式を入力します。 =RAND() 次に、C1セルに以下の数式を入力します。 =INDEX($A$1:$A$5,RANK(B1,$B$1:$B$5)) 最後に、B1とC1を選択して、5行目までコピーします。C1からC5のセルに、立候補者の名前がランダムに表れるはずです。 では、関数の説明です。 RAND関数は、0以上1未満のランダムな数字を返します。この値はシートを再計算(セルを編集するなどすると再計算されます)するたびに変化します。 RANK関数は、選択した範囲における、指定した数値の順位を返します。今回の場合、$B$1:$B$5はランダムな5つの数字を、B1はそのうちの1つの数字を示しています。ちなみに"$"は、コピーしても範囲が変わらないための記号です。同じ行にある数字が5つのなかで何番目か、という値が計算されます。5行目までコピーすれば、1から5の数字が各行にランダムに割り振られることになります。 INDEX関数は、選択した範囲の、指定した行番号の値を返します。今回の場合、$A$1:$A$5は立候補者の一覧であり、行番号は上記の順位を指定してあります。したがって、各行に立候補者の名前がランダムに表示されます。 立候補者の人数が変化した場合、式の中の"5"をたとえば"20"に変えればよいです。これも自動的に変える方法はあります(お望みでしたら補足してください)。 また、このシートを印刷する場合、A列とB列の内容が邪魔になりますので、A列とB列を選択して、右クリック→表示しないを選択すれば、列が見えなくなります。また表示させたいときは、全体を選択してメニューの書式→列→再表示をクリックします。 列を非表示にしない方法としては、印刷用のシートを別に用意し、結果をそちらに表示させることになります。 ・・・いかがでしょうか?

関連するQ&A