在excel中,如何利用vba对url进行解码?
目前在excel中,针对url编码、解码的问题,在excel2013中及以上版本中有了原生编码函数EnCodeURL(),但是却一直没有解码函数,于是想到可以通过vba来...
目前在excel中,针对url编码、解码的问题,在excel 2013中及以上版本中有了原生编码函数EnCodeURL(),但是却一直没有解码函数,于是想到可以通过vba来自定义解码函数,我是vba菜鸟,于是想从互联网上找个现成的函数,可是翻遍了中英互联网,都没找到一个好使的函数。
目前已知能成功解码的只有seoToolsForExcel这个插件的UrlDecode()函数(http://seotoolsforexcel.com/urldecode/),看了下插件购买价格,还是囊中羞涩。
原始字符串:
http://www.baidu.net/?utm_source=baiduppc&utm_medium=ppc&utm_term=%E6%B3%A1%E8%8A%99%E8%9C%9C%E8%AF%AD%E6%80%BB%E9%83%A8&utm_content=A01%E6%B3%A1%E8%8A%99%E8%9C%9C%E8%AF%AD-%E5%90%8D%E7%A7%B0%E7%9F%AD&utm_campaign=PFMY_[%E5%93%81%E7%89%8C](%E5%93%81%E7%89%8C)%3C%E6%B3%A1%E8%8A%99%E8%9C%9C%E8%AF%AD%3E&semk=65144830341&semc=10793640971&semm=2&semp=clg1&sema=bj&semd=pc
结果字符串:
http://www.baidu.net/?utm_source=baiduppc&utm_medium=ppc&utm_term=泡芙蜜语总部&utm_content=A01泡芙蜜语-名称短&utm_campaign=PFMY_[品牌](品牌)<泡芙蜜语>&semk=65144830341&semc=10793640971&semm=2&semp=clg1&sema=bj&semd=pc
求教段VBA urlDecode()函数。 展开
目前已知能成功解码的只有seoToolsForExcel这个插件的UrlDecode()函数(http://seotoolsforexcel.com/urldecode/),看了下插件购买价格,还是囊中羞涩。
原始字符串:
http://www.baidu.net/?utm_source=baiduppc&utm_medium=ppc&utm_term=%E6%B3%A1%E8%8A%99%E8%9C%9C%E8%AF%AD%E6%80%BB%E9%83%A8&utm_content=A01%E6%B3%A1%E8%8A%99%E8%9C%9C%E8%AF%AD-%E5%90%8D%E7%A7%B0%E7%9F%AD&utm_campaign=PFMY_[%E5%93%81%E7%89%8C](%E5%93%81%E7%89%8C)%3C%E6%B3%A1%E8%8A%99%E8%9C%9C%E8%AF%AD%3E&semk=65144830341&semc=10793640971&semm=2&semp=clg1&sema=bj&semd=pc
结果字符串:
http://www.baidu.net/?utm_source=baiduppc&utm_medium=ppc&utm_term=泡芙蜜语总部&utm_content=A01泡芙蜜语-名称短&utm_campaign=PFMY_[品牌](品牌)<泡芙蜜语>&semk=65144830341&semc=10793640971&semm=2&semp=clg1&sema=bj&semd=pc
求教段VBA urlDecode()函数。 展开
1个回答
展开全部
用这个自定义函数
Public Function UrlDecode(ByVal strText As String) As String '如果值中带有非英文和数字,则需转换成%形式
'url编码 utf-8
Dim js
Set js = CreateObject("msscriptcontrol.scriptcontrol")
js.Language = "JavaScript"
'UrlDecode = js.eval("decodeURI('" & strText & "');") '忽略! @ # $& * ( ) = : / ; + '
'UrlEncode = js.Eval("escape('" & Replace(strText, "'", "\'") & "');") '汉字转换为%u开头的Unicode码 不会被此方法编码的字符: @ * / +
UrlDecode = js.Eval("decodeURIComponent('" & strText & "');") '包含://
End Function
欢迎到EXCEL880工作室来看实例视频
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |