Article ID: 185424
Article Last Modified on 11/23/2006
Function Frac2Num(ByVal X As String) As Double
Dim P As Integer, N As Double, Num As Double, Den As Double
X = Trim$(X)
P = InStr(X, "/")
If P = 0 Then
N = Val(X)
Else
Den = Val(Mid$(X, P + 1))
If Den = 0 Then Error 11 ' Divide by zero
X = Trim$(Left$(X, P - 1))
P = InStr(X, " ")
If P = 0 Then
Num = Val(X)
Else
Num = Val(Mid$(X, P + 1))
N = Val(Left$(X, P - 1))
End If
End If
If Den <> 0 Then
N = N + Num / Den
End If
Frac2Num = N
End Function
? Frac2Num("5 3/4"), Frac2Num("2/8")
163435 VBA: Programming Resources for Visual Basic for Applications
Additional query words: KbVBA kbVBp kbVBp500 kbDSupport kbDSD
Keywords: kbhowto KB185424