Ich habe mal wieder in meiner Firma eine Aufgabe gestellt bekommen die ich ohne eure Hilfe nicht lösen kann. Folgendes Problem:
Wir haben einen Verlosung an der ca. 900 Personen teilnehmen. Auf meiner Liste steht jeder Name mit der Anzahl der erworbenen Lose (ca. 35.000)
Ich möchte nun eine Zufallszahl für jede Zeile (ohne doppelten Wert) zuweisen.
Ich verwende zwar ein Makro dafür aber das funktioniert leider nicht so richtig.
Habt ihr eine Idee, was ich machen könnte.
Vielen Dank für die Unterstützung.
Thomas H.
Ps: anbei mein derzeitiger Code
Sub Zufall()
Application.ScreenUpdating = False
Dim ds As Worksheet, es As Worksheet
Dim x As Single, y As Single, z As Single
Dim i As Variant, j As Variant
Dim Weiter_ermitteln As Boolean
Const Anzahl = 25114
Dim arrZufall(1 To Anzahl) As Variant
Set ds = Sheets("Tabelle1")
Set es = Sheets("Tabelle2")
arrZufall(1) = Int((Anzahl * Rnd) + 1)
For i = 1 To Anzahl
Do
Weiter_ermitteln = False
arrZufall(i) = Int((Anzahl * Rnd) + 1)
For j = 1 To i - 1
If arrZufall(j) = arrZufall(i) Then Weiter_ermitteln = True
Next
Loop Until Not Weiter_ermitteln
Next
For i = 1 To Anzahl
es.Cells(i, 1) = arrZufall(i)
Next
z = 1
For x = 2 To ds.UsedRange.Rows.Count
For y = 1 To ds.Cells(x, 2).Value
es.Cells(z, 2) = ds.Cells(x, 1)
z = z + 1
Next y
Next x
Application.ScreenUpdating = True
End Sub