Private Function [B]NumberToText[/B](ByVal Number As Currency, ByVal Base As Long) As String
Dim Value As Long, NewNumber As Currency
Dim Pos As Long, BasePos As Long
Dim InsertZero As Boolean
If Number < 0 Then
NumberToText = "-"
Number = 2147483648@ + Number
If Number = 0 Then Number = 2147483648@
End If
BasePos = Log(4294967296@) / Log(Base)
For Pos = BasePos To 0 Step -1
NewNumber = CCur(Base) ^ CCur(Pos)
Value = 0
Do While Number >= NewNumber
Value = Value + 1
Number = Number - NewNumber
Loop
If Value > 0 Or Pos = 0 Then InsertZero = True
If InsertZero Then
NumberToText = NumberToText & Mid("0123456789ABCDEF", Value + 1, 1)
End If
Next
End Function