Ich verwende Excel für Mac 2011
Für ein linguistisches Projekt möchte ich Folgendes tun. Ich werde eine Wortliste wie diese haben (in Wirklichkeit wird sie viel größer sein):
Meisterliste:
- Tasche
- Bein
- Magnet
- Apfel
- Gummi
Zuerst kopiere ich die Wörter und füge sie in ein neues Blatt ein. Dann erstelle ich Zufallszahlen (mit RAND) in einer angrenzenden Spalte. Um eine zufällige Liste zu erhalten, verwende ich SORT, um die Wortliste nach dem Wert der zufällig erstellten Zahlen zu sortieren.
- Tasche .011234123
- Bein .001324234
- Magnet .01324243
- Apple .013245588
- Gummi .0123412341
Sortieren nach Zahlenspalte
DAS GEFÄLLT MIR:::
Randomisierung 1:
- Gummi
- Magnet
- Apfel
- Tasche
- Lassen
Ich werde mehrere Zufallsauswahlen haben. Angenommen, ich möchte ein Wort ändern. Gibt es eine Möglichkeit, die Zufallsauswahl von der Masterliste abhängig zu machen? Das heißt, wenn ich eine Änderung an der Masterliste vornehme (ein Wort ändere), gibt es dann eine Möglichkeit, diese Änderungen auch auf meine Zufallsauswahl anzuwenden?
Antwort1
Ich könnte eine Lösung mit einer Kombination aus RAND(), RANK() und VLOOKUP() vorschlagen:
Erstellen Sie zunächst Ihre Masterliste:
Fügen Sie dann eine Spalte hinzu, die mit folgendem Verfahren eine Zufallszahl generiert RAND()
:
Dann eine Spalte, die RANK() zum Ranking dieser Zufallszahlen verwendet:=RANK(E2,E:E)
Verwenden Sie abschließend ROW() und VLOOKUP(), um die sortierten Ränge zurückzugeben:=VLOOKUP(ROW()-1,C:D,2,0)
Alle Wörter, die Sie zur Hauptliste hinzufügen, führen zu einer Neuberechnung von RAND(), wodurch sich die Rangfolge ändert und im Wesentlichen eine neue zufällige Reihenfolge entsteht.
Wiederholen Sie dies dreimal für die drei benötigten zufälligen Listen.
Antwort2
Angenommen, Ihre Daten befinden sich auf Blatt1, beginnend bei A1, und sind nach Spalte B sortiert, die die Zufallszahl enthält. Geben Sie diese Formel beginnend bei Zeile 1 ein und lassen Sie sie automatisch nach unten ausfüllen:
=INDEX(Sheet1!A$1:A$6,ROW())
Es dient einfach ROW()
dazu, das row_num
Argument zu erhöhen, INDEX()
während es ausgefüllt wird.
Wenn Sie nicht sortieren möchten, versuchen Sie es mit dieser Formel:
=INDEX(Sheet1!A$1:A$6,MATCH(LARGE(Sheet1!B$1:B$6,ROW()),Sheet1!B$1:B$6,0))
Das hier macht etwas mehr Spaß. Auch hier ROW()
wird zum automatischen Inkrementieren verwendet, LARGE()
um die nächstgrößere Zufallszahl zu finden und dann INDEX/MATCH
das Wort an dieser Position zurückzugeben.
Bedenken Sie, dass RAND()
es volatil ist, d. h. es wird jedes Mal neu berechnet, wenn Ihr Arbeitsblatt berechnet wird. Ich empfehle die manuelle Berechnung, wenn Sie diese Methode verwenden möchten.