私はMac 2011用のExcelを使用しています
言語学プロジェクトでは、次のことを行いたいと思っています。次のような単語リストを作成します (実際にはもっと大きくなります)。
マスターリスト:
- バッグ
- 脚
- 磁石
- りんご
- ガム
まず、単語をコピーして新しいシートに貼り付けます。次に、隣接する列にランダムな数字 (RAND を使用) を作成します。ランダム化されたリストを取得するには、SORT を使用して、ランダムに作成された数字の値で単語リストを並べ替えます。
- バッグ .011234123
- 脚 .001324234
- 磁石 .01324243
- アップル .013245588
- ガム .0123412341
数字の列で並べ替え
これ、私、気になるわ:::
ランダム化1:
- ガム
- 磁石
- りんご
- バッグ
- させて
ランダム化は複数回行われます。単語を変更したいとします。ランダム化をマスター リストに依存させる方法はありますか? つまり、マスター リストに変更を加えた場合 (単語を変更した場合)、これらの変更をランダム化にも適用する方法はありますか?
答え1
RAND()、RANK()、VLOOKUP() を組み合わせたソリューションを提案できます。
まず、マスターリストを作成します。
次に、以下を使用して乱数を生成する列を追加しますRAND()
。
次に、RANK() を使用してこれらの乱数をランク付けする列を作成します。=RANK(E2,E:E)
最後に、ROW() と VLOOKUP() を使用して、並べ替えられた順位を返します。=VLOOKUP(ROW()-1,C:D,2,0)
マスター リストに単語を追加すると、各 RAND() が再計算され、ランキングが変更され、基本的に新しくランダム化された順序が作成されます。
必要な 3 つのランダム リストに対してこれを 3 回繰り返します。
答え2
データが Sheet1 の A1 から始まり、ランダムな数字である列 B で並べ替えられていると仮定すると、行 1 から始まる次の数式を入力し、下に自動入力します。
=INDEX(Sheet1!A$1:A$6,ROW())
単に、引数が満たされるにつれてROW()
増加させるために使用されます。row_num
INDEX()
または、並べ替えたくない場合は、次の数式を試してください。
=INDEX(Sheet1!A$1:A$6,MATCH(LARGE(Sheet1!B$1:B$6,ROW()),Sheet1!B$1:B$6,0))
これはもう少し楽しいです。ここでも を使ってROW()
自動的に増分し、 を使用してLARGE()
次に大きい乱数を見つけ、INDEX/MATCH
その位置にある単語を返します。
RAND()
は揮発性であり、ワークシートが計算されるたびに再計算されることに注意してください。この方法を使用する場合は、手動計算を使用することをお勧めします。