Function to Convert Decimal to Hexadecimal:   Return to List

Public Function ConvertDecimalToHexadecimal(Value As Double) As String
Dim iVal#, temp#, ret%, i%, Str$
Dim BinVal$()
iVal = Value
Do
    temp = iVal / 16
    ret = InStr(temp, ".")
    If ret > 0 Then
        temp = Left(temp, ret - 1)
    End If
    ret = iVal Mod 16
    ReDim Preserve BinVal(i)
    BinVal(i) = NoToHex(ret)
    i = i + 1
    iVal = temp
Loop While temp > 0
For i = UBound(BinVal) To 0 Step -1
    Str = Str + CStr(BinVal(i))
Next
ConvertDecimalToHexadecimal = Str
End Function

Private Function NoToHex(i As Integer) As String
Select Case i
    Case 0 To 9
        NoToHex = CStr(i)
    Case 10:
        NoToHex = "A"
    Case 11:
        NoToHex = "B"
    Case 12:
        NoToHex = "C"
    Case 13:
        NoToHex = "D"
    Case 14:
        NoToHex = "E"
    Case 15:
        NoToHex = "F"
End Select
End Function

See also:
Function to Convert Binary to Decimal
Function to Convert Binary to Octal
Hexadecimal to Decimal Conversion
Octal to Decimal Conversion



Note to Webmaster