When you create generic functions, remember that many functions are a two-way street. For example, many general utility modules contain both LoWord and HiWord functions. However, to compose a Long, a MakeDWord or some related function is required. Instead, convert your LoWord and HiWord functions into properties. That way, they can exist on both sides of the equal sign, for retrieval and for assignment:
x = LoWord(Y)
Or:
LoWord(y) = x
Use this code to implement:
Public Property Get HiWord(L As Long) As Integer ' used to retrieve the HiWord of a long HiWord = End PropertyPublic Property Let HiWord(L As Long, ByVal _ NewValue As Integer) ' used to set the HiWord of a long L is the long to ' modify, NewValue is the integer you want to set into ' the HiWord of the long LEnd Property
Also, remember you don