Roman Locher
Mitglied
Hallo zusammen,
danke für die Tipps. Die Lösung ist ein rekursiver Algorithmus, der aber auch nicht von mir persönlich kommt. Damit lassen sich alle Kombinationen mit einer beliebigen Anzahl an Zahlen ermitteln, ohne den Code ändern zu müssen.
danke für die Tipps. Die Lösung ist ein rekursiver Algorithmus, der aber auch nicht von mir persönlich kommt. Damit lassen sich alle Kombinationen mit einer beliebigen Anzahl an Zahlen ermitteln, ohne den Code ändern zu müssen.
Code:
startNr = 1
endNr = 10
maxNumberLength = 9
currentLength = 0
currentNr = 0
For currentLength = 2 To maxNumberLength
For currentNr = startNr To endNr
Call NextComb((currentNr), (currentLength - 1), resultString$ + CStr(values(currentNr)))
Next currentNr
Next currentLength
End Function
Public Function NextComb(ByVal begin As Integer, ByVal rest As Integer, resultString As String)
Dim currentNr As Integer, query As String
currentNr = 0
If rest > 0 Then
For currentNr = (begin + 1) To endNr
Call NextComb((currentNr), (rest - 1), resultString$ + " OR APOS=" + CStr(values(currentNr)))
Next currentNr
Else
Debug.Print resultString$
End If
End Function