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

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

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

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...