用代码最大的好处,是可以自己写,例如小数转分数的代码是:
Dim V As Double '要转换的小数
Dim N As Long '分子
Dim D As Long '分母
Dim MaxTerms As Long = 15 '最大循环次数
Dim MinDivisor As Double = 0.000001 '最小除数
Dim MaxError As Double = 0.00000001 '精度
Dim F As Double
Dim A As Long
Dim n1 As Long
Dim D1 As Long
Dim n2 As Long
Dim D2 As Long
F = V
n1 = 1
D1 = 0
n2 = 0
D2 = 1
For i As Long = 0 To MaxTerms
A = CLng(Math.Floor(F))
F = F - A
N = n1 * A + n2
D = D1 * A + D2
n2 = n1
D2 = D1
n1 = N
D1 = D
If F < MinDivisor Then Exit For
If Math.Abs(V - N / D) < MaxError Then Exit For
F = 1 / F
Next i
Return N & "/" & D
[此贴子已经被作者于2008-10-13 12:40:43编辑过]