A列に47都道府県が並んでいます。
これをランダムに並べ替えたいのですが、どのような手法がありますか?
http://blog.mag2.com/m/log/0000062465/105307869?page=1
B1~B47 に +rand() と書く。
適当に(疑似)乱数を発生させた(F9)後、
B列:A列を選択して、
昇順 又は 降順 で並び替える。
B列の(疑似)乱数をキーにして、都道府県名を並び替えると、結果的に都道府県名はランダムに並びます。
rand()が本当の意味でランダムな数値を発生させるわけではなさそうなので、あくまでも疑似ですけど・・・。
http://ja.wikipedia.org/wiki/%E6%93%AC%E4%BC%BC%E4%B9%B1%E6%95%B...
URLはダミーです。
47行すべてのB列に=RAND()と入力したあとにB列を選択し、
[編集]-[コピー]→[編集]-[形式を選択して貼り付け]を選び、
<形式を選択して貼り付け>ダイアログで[貼り付け]-[値]を選びOKを押すと乱数が張り付くと思います。
これとセットで並び替えすればよいのではないでしょうか。
マクロ(VBA)を使うしかないですね。
標準モジュールを作成して 以下を貼り付けます。
Ctrl+q で 実行できます。
Sub Macro1()
'
' Macro1 Macro
'
' Keyboard Shortcut: Ctrl+q
'
Dim a As Integer
Dim b As Integer
Dim c As String
For a = 1 To 47
b = Rnd(1) * 46 + 1
c = Range("A" & a)
Range("A" & a) = Range("A" & b)
Range("A" & b) = c
Next a
End Sub
http://excelvba.pc-users.net/fol1/1_1.html
標準モジュールの作成の仕方は こちらを ごらんください。
コメント(0件)