У меня есть код в шестнадцатеричном формате в книге excel. Каждый двузначный код кода находится в отдельной ячейке, поэтому он выглядит как 4D | 54 | 68 | 64 | 00 | 00 | 00 | 06 и т. Д. Также может быть несколько ячеек с 4 или 6-значными частями, если это делает его более простым. Есть ли способ закодировать файл здесь? Эффективно мне это нужно, так что открытие файла в шестнадцатеричном редакторе покажет код. У меня такое чувство, что это может быть связано с HEX2DEC или HEX2BIN, но даже тогда я не знаю, куда идти оттуда.Как создать файл из шестнадцатеричного кода в Excel/VBA
ответ
Вы фактически не сказали, что сделали, но функции текстового файла преобразуют символы. Используйте объект потока в двоичном режиме для записи на диск. Используйте метод write, чтобы поместить в него массив байтов. И подобно функциям текстового файла, избегайте символьных или строковых функций VBA.
Sub test()
Dim ByteArray(4) As Byte
ByteArray(0) = CByte(55)
ByteArray(1) = CByte(55)
ByteArray(2) = CByte(55)
ByteArray(3) = CByte(55)
Set BS = CreateObject("ADODB.Stream")
BS.Type = 1
BS.Open
BS.Write ByteArray
BS.SaveToFile "c:\users\test", 2
End Sub
не может быть наиболее эффективным решением с точки зрения преобразования строки в байтах, а просто открыть файл в двоичном режиме и ввод байта в нем работает просто отлично:
форматSub HexStringToBinaryFile()
Dim hex_val As String
hex_val = "4D|54|68|64|00|00|00|06"
Dim output() As String
output = Split(hex_val, "|")
Dim handle As Long
handle = FreeFile
Open "C:\Dev\test.bin" For Binary As #handle
Dim i As Long
For i = LBound(output) To UBound(output)
Put #handle, , CByte("&H" & output(i))
Next i
Close #handle
End Sub
IT WORKED IT WORKED! Это именно то, что я искал. Возможно, глупый вопрос: есть ли способ сохранить файл .bin с другим именем? –
@JamesKissmer - Конечно. Вы можете назвать выходной файл так, как хотите. – Comintern
- 1. Повторно создать изображение из шестнадцатеричного кода
- 2. Строка из шестнадцатеричного кода без кодировки
- 3. Как показать символ шестнадцатеричного кода?
- 4. Поиск шестнадцатеричного кода в файле
- 5. Печать шестнадцатеричного кода из int в строку
- 6. Преобразование emoji из шестнадцатеричного кода в unicode
- 7. Создать wmv-файл из кода?
- 8. Создать исполняемый файл из кода
- 9. Редактирование шестнадцатеричного кода приложения
- 10. Преобразователь шестнадцатеричного кода цвета
- 11. Преобразование javascript шестнадцатеричного кода
- 12. Как создать gml-файл из Java-кода
- 13. Форматирование шестнадцатеричного кода в Javascript
- 14. Отправка шестнадцатеричного кода
- 15. найти имя цвета из шестнадцатеричного кода цвета
- 16. Apache POI XSSFColor из шестнадцатеричного кода
- 17. Создание строки UTF-8 из шестнадцатеричного кода
- 18. Как создать NSData из шестнадцатеричного значения в swift
- 19. Как получить имя цвета из шестнадцатеричного кода в java?
- 20. Как нарисовать, в php, изображение из шестнадцатеричного кода
- 21. Включение шестнадцатеричного представления сегмента кода обратно в двоичный файл
- 22. Половина вывода HTML-кода из php с ошибкой шестнадцатеричного кода
- 23. вставки RichTextBox в UserForm excelvba
- 24. Как рисовать вектор цветов шестнадцатеричного кода
- 25. Обработка шестнадцатеричного кода SQL Server
- 26. Запись шестнадцатеричного представления в файл
- 27. Преобразование двухзначного шестнадцатеричного кода в эквивалент Unicode
- 28. Отправка шестнадцатеричного кода через UART
- 29. Как получить код операции MIPS из шестнадцатеричного кода
- 30. Создать файл Python из кода Python
Какой файл ваша книга Excel? Какой редактор hex вы используете? что ты уже испробовал? –
.xlsx по умолчанию, но у него нет проблем быть .xls или .xlsm. Использование HxD для проверки шестнадцатеричного кода. Я пробовал преобразовать hex в ASCII и ANSI и записать это в .txt, но возврат назад не оставляет меня с исходными шестнадцатеричными значениями. –