excel - VBA Excel ascii转十六进制

标签 excel vba hex ascii

我在使用 VBA 将 ascii 转换为十六进制时遇到问题。我需要将一个字符串转换为十六进制,它将字母和数字组合在一起。
但是我的代码只转换了大约一半的字符串。

我在 A1 中有以下 Sting:BFEBFBFF000406E3

我填写A6的代码:42464542464246400000000000000000

我正在使用 http://www.convertstring.com/cs/EncodeDecode/HexDecode检查它是否正常并在那里翻译为:42464542464246463030303430364533DA

请问我有什么问题吗?

Sub strg()

Dim strg As String
Dim tmp As String

strg = Worksheets("List1").Range("A1")
Worksheets("List1").Range("A5").Value = strg

tmp = ""
For I = 1 To Len(strg)
  tmp = tmp & hex((Asc(Mid(strg, I, 1))))
Next


Worksheets("List1").Range("A6").Value = tmp

End Sub

感谢您的任何帮助。

最佳答案

Worksheets("List1").Range("A6").NumberFormat = "@"& tmp 工作完美,谢谢 Scott Craner

关于excel - VBA Excel ascii转十六进制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49494229/

相关文章:

vba - 错误处理 VBA(如果 Err raise 则跳过此 block )

excel - 强制刷新工作表的 "Last"单元格

colors - 以编程方式使十六进制颜色变暗

excel - 我正在尝试更改多个工作簿的事件过程?

c++ - 二进制字符串到十六进制 C++

ruby - 如何打印带有前导零的十六进制数字

linux - 捕获一张 Excel 工作表

excel - 是个 。在 .Cells 定义时是否需要在 .Range 中?

c# - Excel Interop 只读过滤行

windows - VBA:将多个 Word 文件合并为一个文件后,Microsoft Word 进程不会退出