0

我有一个从用户上传批量(主)数据的应用程序。现在,我认为我可以将现有数据下载到 Excel 中,而不是创建表单,用户只需在 Excel 中更改他们需要的内容,然后单击说“保存”或 Excel 工作表上提供的一些按钮,这反过来会调用 Web 服务将此数据加载到应用程序中。(我们已经为此提供了一个 Web 服务 API)。我假设当我将 excel 文件(从服务器)下载给用户时,excel 文件中的宏现在也可供用户使用。关于该方法的任何想法,如果这听起来不错,任何关于我如何修改 excel 文件的建议,以便当用户单击“保存”时它会被上传(而不是保存在用户系统上)。也不确定如何从 Excel 中调用 WS 来执行此操作。提前谢谢,-anish

4

1 回答 1

0

虽然您可能需要自己调查一些细节,但我创建了以下库,用于与可能有帮助的 Web 服务交互:

https://github.com/timhall/Excel-REST

这是一个简单的例子:

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
    Dim Api As New RestClient
    Api.BaseUrl = "http://.../yourapi/"

    Dim Data As New Collection
    ' Add data from sheet...

    ' Create update request to api
    Dim Request As New RestRequest
    Request.Resource = "resource/{id}"
    Request.AddUrlSegment "id", "123"
    Request.Body Data
    Request.Method = httpPUT

    ' Execute the update
    Dim Response As RestResponse
    Set Response = Api.Execute(Request)

    ' Check on what happened
    If Response.StatusCode < 400 Then
        ' Success!
    Else
        ' Uh oh, check on the error
        MsgBox Response.Content
    End If
End Sub
于 2013-04-12T01:15:05.713 回答