首页 > 解决方案 > 使用 EXCEL 将十六进制字符转换为 ASCII 字符

问题描述

我在论坛上找到了一些如下所示的代码,它将使用 VBA 脚本将 ASCII 代码转换为十六进制字符,是否可以将十六进制字符转换为 ASCII 字符?

我的代码如下

 Sub AsciiToHex()
 Dim strg As String
 Dim tmp As String

 strg = Worksheets("Sheet1").Range("A1")
 Worksheets("Sheet1").Range("A5").value = strg

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

 Worksheets("Sheet1").Range("A6").value = tmp

 End Sub

我试图将 hex((Asc(Mid(strg, i, 1)))) 交换为 Asc((hex(Mid(strg, i, 1)))) 但这不起作用。任何帮助,将不胜感激

样本数据

十六进制格式 48 65 6C 6C 6F

转换后会如下

Ascii 格式你好

标签: excelvba

解决方案


怎么样:

Public Function KonvertHex(s As String) As String
    KonvertHex = ""
    For i = 1 To Len(s)
        KonvertHex = KonvertHex & Asc(Mid(s, i, 1))
    Next i
End Function

在此处输入图像描述


推荐阅读