Bue, lo dejo porque aunque lo mejore no sera eficiente.
Yo empezaria por aqui....
Dim I As Long, cadena As String, num As Integer, pr() As String
cadena = "abcdefghijklmnopqrstuvwxyz"
num = 3
'combinaciones = len(cadena) ^ num
ReDim pr(Len(cadena))
For I = 1 To Len(cadena)
pr(I) = Mid(cadena, I, 1)
Next I