VB 根据 REST 请求更改编码的宏

VB macro changing encoding on REST request

我有一个 excel 文件,其中有一个按钮关联到 VB 宏,如下所示:

Sub button_macro()
    Set MyRequest = CreateObject("WinHttp.WinHttpRequest.5.1")
    MyRequest.Open "GET", "http://theurl/service?param=""Gestión"""
    MyRequest.Send
End Sub

但是我得到的回复是这样的:

"Gestión" is not a valid value for param.

如何避免 VB 将 'ó' 字符转换为另一种编码?

如果我通过浏览器发送请求,例如:

http://theurl/service?param="Gestión"

服务回答随心所欲。

编辑:

奇怪的是 MsgBox "Código único" 可以正常显示“ó”和“ú”字符。

它在浏览器中有效,因为浏览器会为您编码请求 - 如果您使用浏览器的开发人员工具,您会看到这一点 - 例如,对于

的“示例”URL
http://theurl/service?param="Gestión" 

明白了

http://theurl/service?param=%22Gesti%C3%B3n%22

您可以使用(例如)此处接受的答案中支持 UTF 的方法对您的参数进行编码:How can I URL encode a string in Excel VBA?