Public Function myGetFrac(nVal) ' nVal = Decimal number to be converted
' Test in debug window: ?myGetFrac(32.956)
' The result will be 32 61/64"
Dim i As Integer
Dim lVal, fVal
Dim nmr, dnmr
i = InStr(nVal, ".")
lVal = Left(nVal, i - 1)
fVal = right(nVal, Len(nVal) - (i - 1))
nmr = CLng((fVal * 64))
dnmr = 64
If nmr Mod 32 = 0 Then
nmr = nmr / 32
dnmr = 2
End If
If nmr Mod 16 = 0 Then
nmr = nmr / 16
dnmr = 4
End If
If nmr Mod 8 = 0 Then
nmr = nmr / 8
dnmr = 8
End If
If nmr Mod 4 = 0 Then
nmr = nmr / 4
dnmr = 16
End If
If nmr Mod 2 = 0 Then
nmr = nmr / 2
dnmr = 32
End If
myGetFrac = lVal & " " & nmr & "/" & dnmr & Chr(34)
' Remove the & Chr(34) if you dont want the inches symbol in the result
End Function