Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Herbers CD, 047799, Kombinationen

Forumthread: Herbers CD, 047799, Kombinationen

Herbers CD, 047799, Kombinationen
19.06.2005 16:42:31
Erich
Hallo EXCEL-Freunde,
ich suche eine Lösung mit der ich die Zahlenkombinationen für
4 Spalten
mit den Zahlen 0 - 9 ermitteln kann. Auf der CD habe ich gefunden:

Sub Kombinationen()
Dim sArr As Variant
Dim i As Integer, y As Integer, x As Integer
Dim z As Integer, R As Integer
sArr = Array("A", "B", "C", "D")
For i = 0 To UBound(sArr)
For y = 0 To UBound(sArr)
For x = 0 To UBound(sArr)
For z = 0 To UBound(sArr)
R = R + 1
Cells(R, 1) = _
sArr(i) & sArr(0 + y) & sArr(0 + x) & sArr(0 + z)
Next z
Next x
Next y
Next i
End Sub

Jetzt habe ich das umgewandelt auf:

Sub Kombinationen()
Dim sArr As Variant
Dim i As Integer, y As Integer, x As Integer
Dim z As Integer, R As Integer, a As Integer, b As Integer, c As Integer, d As Integer, e As Integer, f As Integer
sArr = Array("1", "2", "3", "4", "5", "6", "7", "8", "9", "0")
For i = 0 To UBound(sArr)
For y = 0 To UBound(sArr)
For x = 0 To UBound(sArr)
For z = 0 To UBound(sArr)
For a = 0 To UBound(sArr)
For b = 0 To UBound(sArr)
For c = 0 To UBound(sArr)
For d = 0 To UBound(sArr)
For e = 0 To UBound(sArr)
For f = 0 To UBound(sArr)
R = R + 1
Cells(R, 1) = _
sArr(i) & sArr(0 + y) & sArr(0 + x) & sArr(0 + z) & sArr(0 + a) & sArr(0 + b) & sArr(0 + c) & sArr(0 + d) & sArr(0 + e) & sArr(0 + f)
Next f
Next e
Next d
Next c
Next b
Next a
Next z
Next x
Next y
Next i
End Sub

Wo muss ich denn ansetzen, dass die Begrenzung der Zahlenreihe auf 4 erfolgt. Die
Lösung müsste so losgehen:
1111
1112
1113
1114
usw.
Besten Dank für eine Hilfe!
mfg
Erich
EXCEL-Shareware und Freeware: http://www.toolex.de
EXCEL und Lottogewinne machen glücklich: http://48678.rapidforum.com
Anzeige

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

Betreff
Datum
Anwender
Anzeige
Teillösung
19.06.2005 21:12:20
Erich
Hallo EXCEL-Freunde,
bin einen Schritt weiter mit dieser Lösung (das ergibt 10.000 Zeilen):

Sub Kombinationen()
Dim sArr As Variant
Dim i As Integer, y As Integer, x As Integer
Dim z As Integer, R As Integer, a As Integer, b As Integer, c As Integer, d As Integer, e As Integer, f As Integer
sArr = Array("1", "2", "3", "4", "5", "6", "7", "8", "9", "0")
For i = 0 To UBound(sArr)
For y = 0 To UBound(sArr)
For x = 0 To UBound(sArr)
For z = 0 To UBound(sArr)
R = R + 1
Cells(R, 1) = _
sArr(i) & sArr(0 + y) & sArr(0 + x) & sArr(0 + z) '& sArr(0 + a) '& sArr(0 + b) & sArr(0 + c) & sArr(0 + d) & sArr(0 + e) & sArr(0 + f)
Next z
Next x
Next y
Next i
End Sub

Derzeit wird alles in Spalte A geschrieben. Wie kann ich das so umstellen,
dass immer nach 50 Zeilen die nächste Spalte wieder bei Zeile 1 begonnen wird?
Das wären 200 Spalten (es geht um eine Erleichterung des Ausdrucks).
Besten Dank!
mfg
Erich
EXCEL-Shareware und Freeware: http://www.toolex.de
EXCEL und Lottogewinne machen glücklich: http://48678.rapidforum.com
Anzeige
AW: Teillösung
20.06.2005 08:29:59
MichaV
Hi Erich,
wie mit den Zeilen...
anstelle
R = R + 1
Cells(R, 1)
schreibe:

R=R+1
If R Mod 20 = 0 Then 'bei jedem 20igsten R
C=C+1              'Column um 1 höher
R=1                'R wieder auf 1
End If
Cells(R, C)          'in Zelle R,C schreiben

Bevor Du in Deine Schleifen eintauchst musst Du C=1 setzen.
Gruss- Micha
Anzeige
AW: Teillösung
21.06.2005 06:32:46
Erich
Hallo Micha,
leider klappts noch nicht; derzeit habe ich das eingestellt:
For z = 0 To UBound(sArr)
c = 1
R = R + 1
If R Mod 20 = 0 Then 'bei jedem 20igsten R
c = c + 1 'Column um 1 höher
R = 1 'R wieder auf 1
End If
Cells(R, c) = _
sArr(i) & sArr(0 + y) & sArr(0 + x) & sArr(0 + z) '& sArr(0 + a) '& sArr(0 + b) & sArr(0 + c) & sArr(0 + d) & sArr(0 + e) & sArr(0 + f)
Next z
Jetzt bleibt er grundsätzlich in der Spalte 1; in der Spalte 2 nimmt er nur die
erste Zeile?
Besten Dank nochmal!!
mfg
Erich
EXCEL-Shareware und Freeware: http://www.toolex.de
EXCEL und Lottogewinne machen glücklich: http://48678.rapidforum.com
Anzeige
AW: Teillösung
21.06.2005 10:50:19
MichaV
Hi Erich,
bevor Du in die Schleifen gehst, hab ich geschrieben. Also so:

Sub Kombinationen()
Dim sArr As Variant
Dim i As Integer, y As Integer, x As Integer
Dim z As Integer, R As Integer, a As Integer, b As Integer, c As Integer, d As Integer,
e As Integer, f As Integer
Dim C As Integer
sArr = Array("1", "2", "3", "4", "5", "6", "7", "8", "9", "0")
C=1 '<--------- vor den Schleifen
For i = 0 To UBound(sArr)
For y = 0 To UBound(sArr)
For x = 0 To UBound(sArr)
For z = 0 To UBound(sArr)
R = R + 1
If R =21  Then 'wenn Zeile = 21
C=C+1        'Column um 1 höher
R=1          'R wieder auf 1
End If
Cells(R, C) = _
sArr(i) & sArr(0 + y) & sArr(0 + x) & sArr(0 + z) '& sArr(0 + a) '& sArr(0 + b) & sArr(0 + c) & sArr(0 + d) & sArr(0 + e) & sArr(0 + f)
Next z
Next x
Next y
Next i
End Sub
Gruß- Micha

Anzeige
Ohne VBA
21.06.2005 12:46:54
Martin
Hallo Erich,
in A1: 1111
in A2: =A1+1
nach unten kopieren bis A50
in B1: =A1+50
nach unten kopieren bis B50
B1:B50 markieren und so weit nach rechts kopieren wie nötig.
Gruß
Martin Beck
Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige