[Excel VBA] 如何还原URL上表示汉字的代码?

来源:互联网 发布:阿里云cdn怎么设置 编辑:程序博客网 时间:2024/06/05 16:26
  • 网站名称Excel技巧网 | Excel 2010新领地
  • 署名作者: zzmxy
  • 版权声明: 版权所有 非作者本人转载须经许可并注明作者和出处
  • 适用版本: 2010 2007 2003以前版本 
  • 语言环境: 简体中文 (頁麵右上角簡繁轉換)
  • 文章地址: http://www.exceltip.net/thread-21587-1-1-41856.html
  • 学习方法掌握Excel技巧的关键是动手操作 | 下载 ≠ 知识
  •  

    Q: 如何将URL上表示汉字代码还原?
        比如说在百度搜索关键词“数据透视表”,URL链接显示如下,那如何还原为汉字字符呢?

     

    http://www.baidu.com/s?wd=%CA%FD%BE%DD%CD%B8%CA%D3%B1%ED&inputT=2415

    2011-5-25 14-11-25.png 



    A: 上面链接后的wd到&inputT之间的字符,就是汉字转换过来的16进制的编码(如下),
        我们可以借助VBA的StrConv()函数将相应的16进制编码转换为Unicode编码,即平时所看到的汉字。

     

    16进制编码:%CA%FD%BE%DD%CD%B8%CA%D3%B1%ED

    1. Function CNCode(UStr As String)
    2.     Application.Volatile
    3.     Dim Arr() As String
    4.     Dim Cn() As Byte
    5.     Arr = Split(UStr, "%")
    6.     ReDim Cn(0 To UBound(Arr))
    7.     k% = 0
    8.     For i = 0 To UBound(Arr)
    9.         If Arr(i) <> "" Then
    10.             Cn(k) = Val("&H" & Arr(i))
    11.             k = k + 1
    12.         End If
    13.     Next
    14.     CNCode = StrConv(Cn, vbUnicode)
    15. End Function

    演示结果
    2011-5-25 14-22-09.png 
    ----------------------------------

     

    详细内容及操作附件,请参考ExcelTip.Net原帖

    [Excel VBA] 如何还原URL上表示汉字的代码?

    http://www.exceltip.net/thread-21587-1-1-41856.html

    原创粉丝点击