请高手帮忙把VB转换成VB.NET代码,不多,但是很难,该怎么解决

请高手帮忙把VB转换成VB.NET代码,不多,但是很难
Sub   calcfactorial(ByVal   num   As   Long,   Optional   ByRef   POWER   As   String,   Optional   ByRef   FIRSTNUM   As   String)
Dim   I   As   Long,   TEMP   As   Double,   temp2   As   Long,   STIME   As   Single
TEMP   =   0
temp2   =   0
STIME   =   Timer
For   I   =   1   To   num
TEMP   =   TEMP   +   Log(I)   /   Log(10)
If   TEMP   >   1000000   Then
temp2   =   temp2   +   1
TEMP   =   TEMP   -   1000000
End   If
Next
POWER   =   Format(Int(TEMP   +   1),   "000000 ")
TEMP   =   TEMP   -   Val(POWER)
POWER   =   temp2   &   POWER
If   Val(POWER)   <   10   ^   6   Then   POWER   =   Val(POWER)
FIRSTNUM   =   Left(Replace(10   ^   (TEMP),   ". ",   " "),   10)
Debug.Print   Right(Space(9)   &   num,   9)   &   "!   :   用时   "   &   Right(Space(8)   &   Format(Timer   -   STIME,   "0.00000 "),   8)   &   "   秒,   结果   "   &   Right(Space(10)   &   POWER,   10)   &   "   位,前10位为   "   &   FIRSTNUM
End   Sub


Private   Sub   Command1_Click()
Dim   I   As   Long,   J   As   Long
For   J   =   2   To   7
For   I   =   1   To   10
calcfactorial   I   *   10   ^   J
Next
Debug.Print
Next
End   Sub

请教能人!谢谢啦

------解决方案--------------------
Private Sub calcfactorial(ByVal num As Long, _
Optional ByRef POWER As String = " ", _
Optional ByRef FIRSTNUM As String = " ")

Dim I As Long
Dim TEMP As Double
Dim temp2 As Long
Dim t1, t2 As DateTime

TEMP = 0
temp2 = 0
t1 = Now

For I = 1 To num
TEMP = TEMP + Math.Log(I) / Math.Log(10)
If TEMP > 1000000 Then
temp2 = temp2 + 1
TEMP = TEMP - 1000000
End If
Next

POWER = Format(Int(TEMP + 1), "000000 ")
TEMP = TEMP - Val(POWER)
POWER = temp2 & POWER

If Val(POWER) < 10 ^ 6 Then POWER = Val(POWER)

FIRSTNUM = Replace(10 ^ (TEMP), ". ", " ").Substring(0, 10)

t2 = Now

MsgBox((Space(9) & num).Substring((Space(9) & num).Length - 9) & "! : 用时 " & _
DateDiff(DateInterval.Second, t1, t2) & " 秒, 结果 " & _
(Space(10) & POWER).Substring((Space(10) & POWER).Length - 10) & " 位,前10位为 " & FIRSTNUM)

End Sub

Private Sub Command1_Click()

Dim I As Long, J As Long

For J = 2 To 7
For I = 1 To 10
calcfactorial(I * 10 ^ J)
Next
'Debug.Print()