Private Sub Command1_Click() Dim T() As Integer Dim Nb As Integer Dim Cx As Integer Dim n As Integer Dim i As Integer Dim j As Integer Dim z As Integer 'Combinaisons de 3 Lettres sur 26 lettres Nb 26: Cx 3 ReDim T(Cx) n = 0 Debug.Print "----- début -----" Do For i n + 1 To Cx - 1: T(i) 1: Next For i = 1 To Nb For j = 1 To Cx - 1: Debug.Print Chr$(T(j) + 96);: Next: Debug.Print Chr$(i + 96) z = z + 1 Next For n = Cx - 1 To 1 Step -1 i = T(n) + 1 If i <= Nb Then Exit For Next T(n) = i Loop Until n = 0 Debug.Print "nombre = "; z End Sub