Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
792to796
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
792to796
792to796
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Hilfe mit Random Teil 2

Hilfe mit Random Teil 2
16.08.2006 07:49:11
Thorsten
Hallo.
Gestern wurde mir hier mit folgendem Code schon sehr geholfen.

Private Sub E6_Click()
Dim c As Integer
Randomize
c = CInt(9 * Rnd() + 1)
If Cells(17, c) = "" Then
Cells(17, c) = "Text"
GoTo ende
End If
ende:
End Sub

Ich hatte vor, dass zufällig in den Zelle A17-I17 geprüft wird, ob diese leer ist und wenn ja, sollte ein Text eingetragen werden. Funktioniert auch soweit. Das einzige Problem, was ich habe ist, dass, sollte die Zufallszahl eine volle Zelle treffen, ein weitere Mausklick nötig ist. Und das kann, sollte nur noch eine Zelle frei sein, zu einigen Klicks führen, bis die letzte Zelle gefunden wird. Kann man das irgendwie umgehen? Mit "else" vielleicht, dass wenn Zelle voll, automatisch weitergesucht wird (ohne klick). Ich weiß leider nicht wie ich das umsetzen soll...
Gruß Thorsten

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Hilfe mit Random Teil 2
16.08.2006 08:05:17
Sylvio
Hallo Thorsten,
mein kleiner vorschlag:

Private Sub E6_Click()
Dim c As Integer
Dim a As Integer
weiter:
Randomize
c = CInt(9 * Rnd() + 1)
If Cells(17, c) = "" Then
Cells(17, c) = "Text" & c
GoTo ende
Else:
For a = 1 To 9
If Cells(17, a) = "" Then GoTo weiter
Next a
End If
ende:
End Sub

Gruß Sylvio
Random Teil 2 Ergänzung
16.08.2006 08:10:07
Sylvio
Hallo Thorsten,
natürlich: for a=1 to 10
und nicht: for a=1 to 9
ändere das bitte, dann funzt es pro Klick
Gruß Sylvio
Danke, funktioniert super. Eine Frage noch...
16.08.2006 08:20:16
Thorsten
...wenn ich jetzt z.B. einen Bereich zwischen den Zellen ausschließen möchte.
In meinem Fall:
Suchen in Zellen A17-I17, dann J17-S17 weglassen und weitersuchen in T17-AJ17...
Ist das in Kombination mit Deinem Code auch irgendwie möglich? Das ist mein letzter Stolperstein in der Hinsicht. :)
Gruß Thorsten
Anzeige
AW: Danke, funktioniert super. Eine Frage noch...
16.08.2006 08:42:05
Sylvio
Klar geht das auch.
Wenn du Spalte 1 bis 30 durchläufst einfach über eine if-Bedingung die entsprechenden Spalten hier 11 bis 19 ignorieren.
For a = 1 To 30
If a > 10 And a <= 19 Then GoTo weiter2
If Cells(17, a) = "" Then GoTo weiter
weiter2:
Next a
Gruß Sylvio
Was mach ich falsch? (@Sylvio)
16.08.2006 09:39:40
Thorsten
Hallo nochmal.
Ich mache irgendeinen Fehler und hab gerade meinen Blackout für heute. :)
Ich hab es jetzt so eigefügt wie Du es meintest (etwas angepasst) aber er schließt die Zellen nicht aus. Muss die For Schleife dafür nicht auch vor die If - Schleife?
Ich bin verzweifelt. :)

Private Sub E6_Click()
Dim c, a As Integer
Randomize
weiter:
c = CInt(35 * Rnd() + 1)
If Cells(17, c) = "" Then
Cells(17, c) = "Text" & c
GoTo ende
Else
For a = 1 To 36
If a > 20 And a <= 27 Then GoTo weiter2
If Cells(17, a) = "" Then GoTo weiter
weiter2:
Next a
End If
ende:
End Sub

Gruß Thorsten
Anzeige
AW: Was mach ich falsch? (@Sylvio)
16.08.2006 09:48:14
Sylvio
Lol du muss natürlich auch bei der Erstellung der Texte, die Zellen ausschließen nicht nur beim Überprüfen. :-)

Private Sub E6_Click()
Dim c As Integer
Dim a As Integer
Randomize
weiter:
c = CInt(35 * Rnd() + 1)
If c > 20 And c <= 27 Then GoTo weiter
If Cells(17, c) = "" Then
Cells(17, c) = "Text" & c
GoTo ende
Else
For a = 1 To 36
If a > 20 And a <= 27 Then GoTo weiter2
If Cells(17, a) = "" Then GoTo weiter
weiter2:
Next a
End If
ende:
End Sub

Gruß Sylvio
AW: Was mach ich falsch? (@Sylvio)
16.08.2006 09:56:57
Thorsten
Puh. Wenn ich jetzt behaupte, das habe ich auch probiert, glaubt mir das eh keiner, oder? ;) Aber jetzt funktioniert es perfekt. Hab vielen Dank
Gruß Thorsten
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige