Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
496to500
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
496to500
496to500
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

vba code problem

vba code problem
10.10.2004 00:01:03
yusuf
hallo
ich zeige euch hier ein code der die lotto möglichkeiten einzeln aufführt. mein problem ist aber das es von spalte a - f ganz runter rechnet (also eine zahl pro spalte) und hört natürlicher weise bei 65500 auf. ich will aber das es dann auf spalte h - m springt und weiter rechnet und so weiter und so weiter bis die ganze tabelle voll wird. könnt ihr mir bitte helfen.
hier der code
Dim anzahl As Integer
Dim zeile As Long

Sub kombin()
Dim a() As Byte
Application.ScreenUpdating = False
zahl = 49 'z.B. 6 aus zahl
anzahl = InputBox("Wieviel Zahlen?") * 1
ReDim a(anzahl - 1)
f = InputBox("Führende Zahl") * 1
zeile = 1 'Ausgabe beginnt in Zeile 1
'Berechnung Anzahl der Kombinationen zur Info
o = 1
u1 = 1
u2 = 1
n = zahl - f + 1
k = anzahl
For i = 1 To n
o = o * i
Next
For i = 1 To n - k
u1 = u1 * i
Next
For i = 1 To k
u2 = u2 * i
Next
MsgBox ("es gibt " & o / u1 / u2 & " Kombinationen")
'weiter mit Ausgabe
wieviel = 65500 'max 65500 Zahlenreihen wegen Blattlänge
For j = 0 To anzahl - 1
If j = 0 Then
a(j) = f
Else: a(j) = a(j - 1) + 1
End If
Next
ausgabe (a)
j = 1
Do While j < wieviel
s = anzahl - 1
If a(s) < zahl Then
a(s) = a(s) + 1
Else
s = anzahl - 1
Do
s = s - 1
If s = -1 Then Exit Sub
Loop Until a(s) < zahl And a(s) + anzahl - s <= zahl
a(s) = a(s) + 1
For i = s + 1 To anzahl - 1
a(i) = a(i - 1) + 1
Next
End If
ausgabe (a)
j = j + 1
Loop
Application.ScreenUpdating = True
End Sub


Sub ausgabe(a)
For i = 0 To anzahl - 1
Cells(zeile, i + 1) = a(i)
Next
zeile = zeile + 1
End Sub

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: vba code problem
K.Rola
Hallo,
die Datei wird allerdings riesig und ob deinem PC nicht die Puste ausgeht, weiß ich
nicht. Auf jeden Fall solltest du den Code über Nacht laufen lassen.
Option Explicit

Sub Lotto_moegliche_Kombinationen()
Dim i As Byte, j As Byte, k As Byte, l As Byte, m As Byte, n As Byte
Dim c As Integer, r As Long
r = 1
c = 1
Application.ScreenUpdating = False
For i = 1 To 49
For j = i + 1 To 49
For k = j + 1 To 49
For l = k + 1 To 49
For m = l + 1 To 49
For n = m + 1 To 49
Cells(r, c) = i & " " & j & " " & k & " " & l & " " & m & " " & n
r = r + 1
If r > 55000 Then
c = c + 1
r = 1
End If
Next
Next
Next
Next
Next
Next
Application.ScreenUpdating = True
End Sub

Gruß K.Rola
Anzeige
AW: vba code problem
10.10.2004 18:06:33
yusuf
hallo rola,
vielen dank für deine hilfe aber ich brauche für jede zahl ein kästchen z.B. die zahl 1 in a1, die 2 in b1, die 3 in c1, die 4 in d1, die 5 in e1 und die 6 in f1. wenn a,b,c,d,e und f bis unten ganz voll werden dann muß es in die nächste spalte springen und damit man bei so vielen zahlen nicht durcheinander kommt die spalte g frei lassen und bei spalte h bis m weiter machen und so weiter und so weiter kannst du mir bitte da helfen
mfg yusuf
AW: vba code problem
K.Rola
Hallo,
das sind dann 83.902.896 Zellen, wozu du 6 Excelsheets brauchst.
Tut mir Leid, da kann ich dir nicht helfen.
Gruß K.Rola
Anzeige
AW: vba code problem
yusuf
danke rola das du nochmal geschrieben hast. ich will nämlich mit der zahl neun beginnen und es gibt doch komplett 13, noch was millionen möglichkeiten und in dem ich mit der neun beginne verkleinere ich die ganze sache noch einmal, kann man meinem code nichts anhängen?

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige