Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Ist es möglich etwas im objektnamen zu kombinieren?

z.B.

Min = 1

Max = 8

For i = 1 To Max

Randomize

ZZahl = Int((Max * Rnd) + Min)

Text & i = ZZahl <---also text feld mit der nummer der runde

Next i

hab leider keine msdn library zur verfügung

Danke im vorraus

Gruß Pico

Geschrieben

und wie bekomm ich es hin das bei einer zufallszahl nur ein oder zweimal die gleiche nummer genommen wird, wie zb beim lotto

gruß Pico

Geschrieben

Hi,

da musst'e mit Feldern arbeiten.

Wenn du z.B. das Label1 kopierst, wirst du gefragt, ob ein "Steuerelementefeld" verwenden willst.

Ja, du willst!

Sagen wir du kopierst "label1" 5 mal (wirst aber nur einmal gefragt, hast am Schluss 6 Labels).


Private Sub Command1_Click()

    For i = 0 To 5  '6 Felder, aber bei 0 beginnend

        Label1(i) = "Feld " & i

    Next i

End Sub

Die UngleichAbfrage musste mit auch mit Feldern (Variablen) lösen. Hab hier zusammengeknaupt, ist nicht schön, läuft aber auf den ersten Blick

Private Sub Command2_Click()

Dim Wert1

Dim FeldHlp(0 To 6) As Integer

Dim i


    For i = 0 To 5

        Wert1 = Int((50 * Rnd) + 1)  'zufall von 1 bis 50

        FeldHlp(i) = Wert1

    Next i


For x = 0 To 5

For z = 0 To 5

    If z <> x Then

        If FeldHlp(z) = FeldHlp(x) Then

            Wert1 = Int((50 * Rnd) + 1)  'zufall von 1 bis 50

            FeldHlp(x) = Wert1

            z = 0

        End If

    End If

Next z

Next x


    For i = 0 To 5

        Label1(i) = FeldHlp(i)

    Next i


End Sub

Hth

KarlBerg

Geschrieben

Hi,

ist noch en Fehler aufgefallen.

schreib unter z=0 noch x=0.

Also:


For x = 0 To 5

For z = 0 To 5

    If z <> x Then

        If FeldHlp(z) = FeldHlp(x) Then

            Wert1 = Int((50 * Rnd) + 1)  'zufall von 1 bis 50

            FeldHlp(x) = Wert1

            z = 0

            x = 0   '<-ÄNDERUNG

        End If

    End If

Next z

Next x

Ansonsten darf der Bereich des Zufalls (hier von 1 bis 50) nicht unter der Anzahl der Labels liegen, sonst kommste in ne Endlosschleife, weil man nicht jedem Label ne andere Nummer zuordnen kann, weils ja net genug gibt.

Sollte so jedenfalls Fehler frei laufen.

MfG

KarlBerg

Geschrieben

anscheinend gibs doch noch nen prob oder ich bin zu blöd

ich hab das folgend abgeändert:

Dim Wert1 As Integer

Private Sub Command1_Click()

For i = 0 To 15

Text1(i) = 0

Next i

For x = 0 To 16

For z = 0 To 16

If z <> x Then

If Text1(z) = Text1(x) Then

Wert1 = Int((16 * Rnd) + 1)

Text1(x) = Wert1

z = 0

End If

End If

Next z

Next x

End Sub

ich hab 16 felder + 1 das nicht angezeigt wird( er packt immer ins letzte feld eine 0 und ich weiss ned warum deshalb hab ich das feld hinzugefügt)

bei jedem click sollen 16 neue verschiedene werte von 1 bis 16 ausgegeben werden

nur in den meisten fällen ist eine zahl doppelt, woher kommt das?

thx im vorraus

gruß Pico

Geschrieben

Hi,

das mit dem doppelten Wert, hab ich eigentlich schon in meinem 2. Post behoben (glaub ich). ;)

*Egal*

Hab deinen Code jetzt so abgeändert, dass er laufen sollte.


Dim Wert1 As Integer


Private Sub Command1_Click()

For i = 0 To 15

    Text1(i) = Int((16 * Rnd) + 1)

Next i


For x = 0 To 15

    For z = 0 To 15

        If z <> x Then

            If Text1(z) = Text1(x) Then

                Wert1 = Int((16 * Rnd) + 1)

                Text1(x) = Wert1

                z = 0

                x = 0

            End If

        End If

    Next z

Next x


End Sub

MfG

KarlBerg

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...