Törölt nick Creative Commons License 2019.04.29 0 0 32724

Kicsit általánosabb formában:

 

Sub kombinacio()
    Const csvSzámok = "3,5,9,12,13,15,32,44,87,92,100,101,111,145,151"
    Dim arrSzámok As Variant
    Dim A As Long, B As Long, C As Long, D As Long, iMax As Long, sor As Long, utolsosor As Long
    
    arrSzámok = Split(csvSzámok, ",")
    iMax = UBound(arrSzámok)
    utolsosor = ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row
    ActiveSheet.Range("A1:A" & utolsosor) = "" ' A oszlop adatainak törlése
    sor = 1
    For A = 0 To iMax
        For B = A + 1 To iMax
            For C = B + 1 To iMax
                For D = C + 1 To iMax
                    Cells(sor, 1) = arrSzámok(A) & ", " & arrSzámok(B) & ", " & arrSzámok(C) & ", " & arrSzámok(D)
                    sor = sor + 1
                Next
            Next
        Next
    Next
End Sub

Előzmény: pimre (32723)