Prueba esta macro te genera todas las combinaciones que quieres tarda más o menos en un equipo obsoleto 14 segundos en uno más moderno tardara la mitad de ese tiempo o menos
Sub genera_combinaciones()
Dim numeros As Byte, arreglos As Byte
Dim INICIO As Date, FIN As Date
Dim combinaciones As Long, X As Long, TIEMPO As Single
Dim funcion As WorksheetFunction
Set funcion = WorksheetFunction
Dim COMBOS As Range, MATRIZ() As Variant
INICIO = Time
numeros = 25: arreglos = 5
combinaciones = funcion.Combin(numeros, arreglos)
MsgBox ("COMBINACIONES A GENERAR " & combinaciones), _
vbInformation, "AVISO"
Set COMBOS = Range("B2").Resize(combinaciones, arreglos)
MATRIZ = COMBOS
X = 1
For A = 1 To numeros
For B = 2 To numeros
For C = 3 To numeros
For D = 4 To numeros
For E = 5 To numeros
If B > A And C > B And D > C And E > D Then
MATRIZ(X, 1) = A
MATRIZ(X, 2) = B
MATRIZ(X, 3) = C
MATRIZ(X, 4) = D
MATRIZ(X, 5) = E
X = X + 1
End If
Next E
Next D
Next C
Next B
Next A
With COMBOS
Range(.Address) = MATRIZ
.EntireColumn.AutoFit
End With
set combos=nothing
FIN = Time
TIEMPO = FIN - INICIO
MsgBox (combinaciones & " GENERADAS EN " & Second(TIEMPO) & " SEGUNDOS"), _
vbInformation, "AVISO"
End Sub