Gewinner aus Verlosungliste ermitteln?
Ich habe eine Verlosungsliste. In den Zellen C3:C100 stehen die Bezeichnungen der zu verlosenden Artikel. Die Bewerber sollen sich dann zeilenweise hinter jedem Artikel eintragen. D.h., der erste Bewerber zum Artikel C3 steht in E3, der nächste in F3 usw. In einer Zelle am Ende der Zeile soll per Zufall ein Gewinner ermittelt werden. Geht das per Formel oder gibt es ein gängiges vba-Script. Bisher habe ich nur Lösungen gefunden, wenn die zufällig auszuwählenden Werte in einer Spalte stehen.
2 Antworten
Wenn in Z3 ein zufälliger Wert aus E3:Y3 stehen soll, dann lautet die Formel
=INDEX(E3:Y3;1;ZUFALLSBEREICH(1;ANZAHL2(E3:Y3)))
Dabei ist es egal, wieviele Namen in E3:Y3 stehen, es darf bloß keine Lücken geben.
Klar geht das.
Markiere F3:F100, gibt folgende Formel ein und schließe die Eingabe mit Strg + Enter ab:
=WENN(ODER(ZÄHLENWENN($E3:E3;E3)>1;E3="");"";INDEX($E3:E3;1;ZUFALLSBEREICH(1;ANZAHL2($E3:E3))))
Ich glaube, in Spalte E bis .... sollen die Bewerber manuell eingetragen werden. Ich hab das so verstanden, dass in F noch keine Formel hingehört.
Die Formel liefert leer, wenn links davon keine manuelle Eingabe erfolgte, sonst berechnet sie durch Zufall einen Namen, aus den Zellen davor.
Kann ZÄHLENWENN($E3:E3;E3)>1
denn WAHR werden? Vorausgesetzt, dass ein Bewerber nicht mehrfach hinter einem Artikel steht, nicht.
Klar, wenn links die ergebnisspalte ist, dann gibt es ihren inhalt 2x.
Generell muss man nur bei den Lösungen über eine Formel mit Zufallsfunktion beachten, dass diese bei Änderungen direkt neu ermittelt wird. Also sobald die "offizielle" Verlosung erfolgt ist, die Ergebnisse kopieren und als Werte einfügen.