엑셀 조합 6

엑셀 조합 6

좋은 아침이에요,

나는 반복하지 않고 1에서 6까지 가능한 모든 조합을 Excel에서 수행하려고 노력하고 있습니다.

6! 720가지 가능성을 어떻게 나열할 수 있나요?

감사합니다. 예시 123456 132456 654321

답변1

이 매크로는 간단하지만 느립니다.

Sub Pickz()
    Dim i As Long, j As Long, k As Long, l As Long, m As Long, n As Long
    Dim Z As Long
    Z = 1
    For i = 1 To 6
    For j = 1 To 6
    For k = 1 To 6
    For l = 1 To 6
    For m = 1 To 6
    For n = 1 To 6
    If Zort(i, j, k, l, m, n) Then
        Cells(Z, 1) = i & j & k & l & m & n
        Z = Z + 1
    End If
    Next n
    Next m
    Next l
    Next k
    Next j
    Next i
End Sub

Function Zort(i, j, k, l, m, n) As Boolean
    Dim c As Collection
    Set c = New Collection
    Zort = True
    On Error Resume Next
    c.Add i, CStr(i)
    c.Add j, CStr(j)
    c.Add k, CStr(k)
    c.Add l, CStr(l)
    c.Add m, CStr(m)
    c.Add n, CStr(n)
    If Err.Number = 0 Then
    Else
        Zort = False
        Err.Number = 0
    End If
    On Error GoTo 0
End Function

관련 정보