[[20020719131546]] 『データをランダムに並べ替えたい』(ふぃふぁ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『データをランダムに並べ替えたい』(ふぃふぁ)

例えば、1〜20の数値(データ)が縦に並んでいて(続き番号ではなく)、そのデータを1〜20の間でランダムに別のシート等に割り振りしたいのです。但し、=RANDBETWEEN (乱数)の様に同じものが何度もある状態ではなく、必ずデータが1〜20があったら、1〜20のどれかを割り振りたいのです。


a 1

b 2

c 3

と縦にデータ(1〜3がデータ)があったら別のシートとかに

a 2

b 1

c 3

とか、

a 3

b 2

c 1

とかに自動でデータ数値をばらばらに割り振りたいのです。

計算式等詳しくないので、申し訳ありませんがどなたか教えていただけませんでしょうか?よろしくお願いします。


 表の最初の列に =INT(RAND()*100) と乱数式を入力し、フィルハンドルをダブルクリックすれば、

隣接連続データまでコピーされます。

これで、欄数列を昇順、降順の何れかでソートします。

乱数は他のセルに値を入力すれば、再計算されますが、ソートしない限りデータ部分は変化しません。

標題A,B,Cのデータ範囲(標題を除く)を範囲名 DATA とします。

 乱数	No	A	B	C

6 1 a1 b14 c5

92 2 a2 b12 c19

14 3 a3 b1 c2

1 4 a4 b2 c6

95 5 a5 b4 c3

89 6 a6 b9 c11

99 7 a7 b7 c10

99 8 a8 b20 c17

38 9 a9 b5 c7

50 10 a10 b16 c15

54 11 a11 b18 c18

88 12 a12 b10 c12

55 13 a13 b8 c14

68 14 a14 b3 c1

86 15 a15 b6 c16

40 16 a16 b15 c13

46 17 a17 b13 c8

21 18 a18 b19 c20

86 19 a19 b17 c9

32 20 a20 b11 c4

 シート2でA2:A21に1〜20の連番入力し、B1,C1,D1に1,2,3と入力します。

B2にシート1のソート結果を表示させる式 =INDEX(data,$A2,B$1) を入力して

次にB2:C21を選択して、ファンクションキー【F2】を押して、B2を編集状態にしたら、

Ctrlキーを押しながらEnterきーで確定します。式は一瞬にコピーされます。

   A     B        C        D 

 	1	2	3

1 a1 b14 c5

2 a2 b12 c19

3 a3 b1 c2

4 a4 b2 c6

5 a5 b4 c3

6 a6 b9 c11

7 a7 b7 c10

8 a8 b20 c17

9 a9 b5 c7

10 a10 b16 c15

11 a11 b18 c18

12 a12 b10 c12

13 a13 b8 c14

14 a14 b3 c1

15 a15 b6 c16

16 a16 b15 c13

17 a17 b13 c8

18 a18 b19 c20

19 a19 b17 c9

20 a20 b11 c4

シート1の乱数列を並べ替えれば任意の順序に変化します。

10問の変化であれば、A列の番号11以下の式を削除すれば、よいことになります。

 (シニア)


シニア様

早速のお返事有り難うございました!!

職場でExcelを使っているので、未だやっていませんが(現在自宅なもので)、教えていただいた事やってみます。

有り難うございました。


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.