Need help in VBA

Moderatoren: Asifish, king-pat

Antworten
Benutzeravatar
FRoy
Beiträge: 254
Registriert: 21 Jul 2005, 11:44
Wohnort: Niederösterrreich
Kontaktdaten:

Need help in VBA

Beitrag von FRoy »

Gibts hier wen der VBA drauf hat??

Hab folgendes Problem:


Ich brauch Zufallszahlen von 0-4 von denen keine doppelt vorkommt.

Das mit Rnd bekom ich hin, nur aber das doppelte nicht vorkommen des pack ich ned.

Thx Flo
Benutzeravatar
Cali
MIA Team Member
MIA Team Member
Beiträge: 8816
Registriert: 10 Dez 2002, 17:58
Spielt gerade: Cardgame against humanity
Lieblingsspiel: PSO Dreamcast
Wohnort: Stuttgart
Kontaktdaten:

Beitrag von Cali »

ich arbeite nie mit VBA,
brauchst du es für Excel?

Hier ne Funktion:

Code: Alles auswählen

Function RandLotto(Bottom As Integer, Top As Integer, _
                    Amount As Integer) As String
    Dim iArr As Variant
    Dim i As Integer
    Dim r As Integer
    Dim temp As Integer
    
    Application.Volatile
    
    ReDim iArr(Bottom To Top)
    For i = Bottom To Top
        iArr(i) = i
    Next i
    
    For i = Top To Bottom + 1 Step -1
        r = Int(Rnd() * (i - Bottom + 1)) + Bottom
        temp = iArr(r)
        iArr(r) = iArr(i)
        iArr(i) = temp
    Next i
    
    For i = Bottom To Bottom + Amount - 1
        RandLotto = RandLotto & " " & iArr(i)
    Next i
    
    RandLotto = Trim(RandLotto)
    
End Function
Beim Aufruf der Funktion einfach die folgenden Parameter übergeben:

Function RandLotto(0, 4, 1) As String

Du erhältst dann eine Zahl zw. 0-4.


Wenn du es selbst lösen willst:

Schau einfach mal, was man als Zufallszahl alles zurückbekommen kann und wie man es multipliziert oder dividiert und rundet, dass nur 0-4 rauskommen kann.

Oder du prüfst in einer Schleife ab, ob die Zufallszahl im Bereich von 0-4 liegt und falls nicht, wird einfach wieder eine neue erzeugt (nicht die beste Lösung aber die simpelste)
Benutzeravatar
Kenshin
MIA V.I.P.
MIA V.I.P.
Beiträge: 1062
Registriert: 23 Mär 2003, 20:56
Spielt gerade: Monster Hunter World Iceborne, Code Vein, PSO2
Lieblingsspiel: Final Fantasy VII, Seiken Densetsu II
PSO 2 ID: 死活 (JP)/Kobura (NA)
Wohnort: NRW / Germany
Kontaktdaten:

Beitrag von Kenshin »

So mit dem Array hätte ich es in C / C++ und Java auch gelöst, mit vB hab ich mich nicht auseinandergesetzt
PSO2 NA: Kobura Br/Hu [Ship2]
3DS/Switch Friendcode auf Anfrage oder im entsprechenden Thread
Benutzeravatar
FRoy
Beiträge: 254
Registriert: 21 Jul 2005, 11:44
Wohnort: Niederösterrreich
Kontaktdaten:

Beitrag von FRoy »

Danke vielmals!
Antworten