X-Dron 675 EGP
Рейтинг канала: 5(123) Репутация: 149 Сообщения: 634 Откуда: Санкт-Петербург, Россия Зарегистрирован: 07.02.2001 |
|
Задачка мной решена. Все гениальное просто.
Обошелся всего еще 4-мя строчками в этой секции
---------------------------------------
Private Function Float_To_Hex(In_Value As Single) As String
'/....
End Function
---------------------------------------
, две из которых деклорации.
У меня на решение ушло ~4 часа, по часу на сточку .
Кто хочет может потренироваться. Чтобы сэкономить время желающим даю подсказки.
1. Стандартными функциями VBA задачку не решить. Требуется подключение "ядерного" оружия.
2. Метод очень хорошо описан в MSDN MSVB.
Ответ под спойлером
Cкрытый текст (кликните здесь для просмотра)
Public Declare Sub HMemCpy Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)
Private Function Float_To_Hex(In_Value As Single) As String
Dim B_Long As Long
HMemCpy B_Long, In_Value, 4
Float_To_Hex = Hex(B_Long)
End Function
Public Sub Macro1()
Dim A_float As Single
Dim A_String As String
'.......
A_float = 12.123
A_String = Float_To_Hex(A_float)
'.......
End Sub
|
_________________ Самое тяжелое в открытом космосе - "репа". Один раз уронишь, потом фиг поднимешь.
Последний раз редактировалось: X-Dron (17:51 29-03-2009), всего редактировалось 1 раз |