Allora.... ho provato come hai detto tu... la funzione è la seguente:
Public Function factorial(ByVal n As Double)
fattor = n / 1000000
If n = 0 Then
factorial = 1
Else
For Index = n - 1 To 1 Step -1
fattor = fattor * Index
Next Index
factorial = fattor * 1000000
End If
End Function
Ma va comunque in overflow... l'errore me lo da in
fattor = fattor * Index
Se invece text1.text è molto grande (ca 100) lo da qui
num = (CInt(Text1.Text) ^ CInt(Text2.Text)) / factorial(ByVal x)