ASP.NET w-s ......从Excel中消耗?

时间:2009-08-27 23:51:50

标签: asp.net xml web-services excel vba

我们在现有的ASP.NET网站中有一个Web服务,当通过其他ASP.NET位访问时,它可以正常工作。我想让Excel 2007和2003调用w-s并使用VBA刷新工作表的一部分。

理想情况下,我希望能够使用香草版的Excel(即不需要客户端安装额外的位)。

作为首发(2007年),我尝试了数据 - >获取外部数据 - >来自网络。指出: http://myhost/myvirtdir/ABCInfoWS.asmx?WSDL&op=testwebservice1

Stuff出现在Excel中(虽然'指定的XML源不引用模式'消息)但事实证明它实际上是对同一WSDL下提供的所有Web服务的描述

有人能告诉我如何通过VBA从 testwebservice 获取数据吗?

2 个答案:

答案 0 :(得分:0)

从上面的URL中删除?WSDL部分。

编辑:您的网络服务返回什么?
Excel的数据 - > Import Data期望使用tr& amp; td获取数据。

如果您的Web服务返回XML,它也应该可以正常工作。

答案 1 :(得分:0)

很抱歉,事实证明我无法通过评论提供足够的信息。当我选择SOAP 2和XML时,这就是Excel中出现的内容:

只是回应你的编辑,我的w-s返回XML,这就是它的样子 - 它不包含tr / td,因为它以前被用作“真正的”web服务。

我已经意识到我根本没有得到实际的数据,而是描述了网络服务提供的数据 - 我想我的网址仍然有点不合适?

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
<soap12:Body>
<GetBookJobStatusResponse xmlns="http://www.protecttheguilty.com/">
<GetBookJobStatusResult>
<BookJobStatus>
<JobStatus>string</JobStatus>
<JobType>string</JobType>
<RequestTime>dateTime</RequestTime>
<StartTime>dateTime</StartTime>
<EndTime>dateTime</EndTime>
<PathToOutput>string</PathToOutput>
</BookJobStatus>
<BookJobStatus>
<JobStatus>string</JobStatus>
<JobType>string</JobType>
<RequestTime>dateTime</RequestTime>
<StartTime>dateTime</StartTime>
<EndTime>dateTime</EndTime>
<PathToOutput>string</PathToOutput>
</BookJobStatus>
</GetBookJobStatusResult>
</GetBookJobStatusResponse>
</soap12:Body>
</soap12:Envelope>