提问人:hakohako 提问时间:11/7/2023 最后编辑:braXhakohako 更新时间:11/7/2023 访问量:29
通过 VBA 宏中的输入参数调用 asmx Web 服务,但缺少 SoapClient30
Calling asmx web service by input parameters from VBA macro but SoapClient30 is missing
问:
我有一个带有宏的 excel 文件,该宏调用了 asmx 服务。宏和服务是 15 年前写的。Excel 宏调用 asmx 服务,服务将数据从 excel 单元格上传到 db。
15年前,Web服务调用是这样的:
Public soapService As SoapClient30
Set soapService = New SoapClient30
soapService.ClientProperty("ConnectorProgID") = "MSSOAP.WinInetConnector30"
soapService.MSSoapInit "http://blabla.com/ServiceName/Import.asmx?WSDL"
Call Module1.Add2DB_WebService
Add2DB_WebService是这样的:
strResp = soapService.upload(inputParameter1, inputParameter2, inputParameter3, inputParameter4)
该宏工作完美,但由于我们使用 Office Excel 2016,因此每次使用该 excel 文件的 PC 都应该包含旧的 dll,因为 SoapClient30 多年来缺少引用。因此,我们的IT部门将SoapClient30 dll放到那台PC上,excel可以正常运行。
现在,我必须使excel宏在Excel 2016上正常运行。
我无法访问和更改 asmx 服务。我无法编写新的 API 等。我必须调用完全相同的 asmx 服务。
由于缺少 SoapClient30,它总是说“找不到项目或库”
如何使该宏在Excel 2016中运行?SoapClient30 的任何可能的替代品?
我很想请你帮忙。
我尝试在没有 SoapClient30 的情况下从 VBA 宏调用 asmx 服务,但无法成功。
答: 暂无答案
评论