microsoft store保存路径_VBA 实践指南 -- 网络请求Microsoft.XMLHttp

b0320e8402acdd20e9ec3056484fd6a3.png

大家在使用VBA的过程中,一般不会涉及到网络请求方面的需求。简单的办公自动化已经可以满足大部分场景的需求,能快速的提升工作效率。实际上,在开发excel-vba的插件,模块或工具的过程中,经常会遇到网络数据请求等情况,Microsoft.XMLHttp库就提供网络方面的服务。

Microsoft.XMLHttp,顾名思义就是网络请求库,vba可以直接创建调用

使用步骤:

  1. 创建XMLHTTP对象
  2. 打开与服务端的连接,同时定义指令发送方式,服务网页(URL)和请求权限等。客户端通过Open命令打开与服务端的服务网页的连接。与普通HTTP指令传送一样,可以用"GET"方法或"POST"方法指向服务端的服务网页。
  3. 发送指令。
  4. 等待并接收服务端返回的处理结果。
  5. 释放XMLHTTP对象

方法解析:

Open( bstrMethod, bstrUrl, varAsync, bstrUser, bstrPassword )

bstrMethod: 数据传送方式,即GET或POST。
bstrUrl: 服务网页的URL。
varAsync: 是否同步执行。缺省为True,即同步执行,但只能在DOM中实施同步执行。用中一般将其置为False,即异步执行。
bstrUser: 用户名,可省略。
bstrPassword:用户口令,可省略。

例如:

http.Open "GET", "http://****/report/doView?type=2", False

Send(varBody)

varBody:指令集。可以是XML格式数据,也可以是字符串,流,或者一个无符号整数数组。也可以省略,让指令通过Open方法的URL参数代入。
setRequestHeader( bstrHeader, bstrvalue )
bstrHeader:HTTP 头(header)
bstrvalue: HTTP 头(header)的值

例如:

http.setRequestHeader "CONTENT-TYPE", "application/x-www-form-urlencoded"

http.setRequestHeader "token", token '你可以在请求头里面放token,通过网站验证!

http.send download_datetime

XMLHTTP属性

onreadystatechange:在同步执行方式下获得返回结果的事件句柄。只能在DOM中调用。
responseBody: 结果返回为无符号整数数组。
responseStream: 结果返回为IStream流。
responseText : 结果返回为字符串。
responseXML: 结果返回为XML格式数据。

代码实例

以下代码利用xmlhttp实现对Restful AIP 进行数据抓取,将返回的数据保存到本地文件中

Sub 

好了,这期就说这么多了,就这样吧,没耐心写下去了。。

我是硬核分析仙人,做了很多年数据,希望得到大家的吐槽和反馈。谢谢!

WX号:huangmoyue

B uper:硬核分析仙人

weibo:硬核分析仙人

# 接受各类咨询

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值