Salut,
Bernard , tu peux affecter directement une plage de cellules à un tableau et vice versa on évite un 2 éme passage:
Sub Tirage()
Dim TabPart, TabRes
Dim I&, J&, K&, L&, M&, N&, NbPart As Byte
Dim ModeCalcul As Long
ModeCalcul = Application.Calculation
Application.ScreenUpdating = False
Sheets("Calcul").Select 'je le laisse pour les utilisateurs XL97
Sheets("Calcul").Range("C5
20000").ClearContents
N = 1
NbPart = [NbParts]
TabPart = Range([A5], [B65536].End(xlUp)).Value
ReDim TabRes(1 To [B2].Value, 1 To 2)
For I = 1 To NbPart - 1
For J = I + 1 To NbPart
For K = J + 1 To NbPart
For L = K + 1 To NbPart
For M = L + 1 To NbPart
' Maligne = Maligne + 1
TabRes(N, 1) = Str(TabPart(I, 1)) & " " & Str(TabPart(J, 1)) & " " & Str(TabPart(K, 1)) & " " & Str(TabPart(L, 1)) & " " & Str(TabPart(M, 1))
TabRes(N, 2) = TabPart(I, 2) + TabPart(J, 2) + TabPart(K, 2) + TabPart(L, 2) + TabPart(M, 2)
N = N + 1
Next M
Next L
Next K
Next J
Next I
[C5].Resize(UBound(TabRes), UBound(TabRes, 2)) = TabRes
Application.Calculation = ModeCalcul
Range("G2").Select
Application.ScreenUpdating = True
End Sub
J'ai eu beau cherché Ti dasn tes nombreux posts, je n'ai rien retrouvé.
A+++
Lien supprimé