2

我正在首次尝试在 SharePoint 2010 中处理 Excel Services。我正在尝试打开已上传到共享文档的 Excel 文件。我已经验证我可以使用以下网址通过浏览器手动打开文件:

http://myserver/Shared%20Documents/Adds2011.xls

但是,当将此传递给以下 Web 例程时,我收到一个错误。这是例程:

Private Sub OpenExcel(myurl As String)
    Dim xlApp As New exServices.ExcelService
    xlApp.Credentials = System.Net.CredentialCache.DefaultCredentials
    Dim status(10) As exServices.Status
    Dim sessionID As String = ""
    Try
        sessionID = xlApp.OpenWorkbook(myurl, "en-US", "en-US", status)

        Dim sheetInfo() As exServices.SheetInfo = xlApp.GetSheetNames(sessionID, status)

        Dim cell As Object = xlApp.GetCell(sessionID, sheetInfo(0).Name, 1, 1, True, status)
    Catch ex As Exception
        Debug.WriteLine(ex.ToString)
    End Try
    If sessionID <> "" Then
        xlApp.CloseWorkbook(sessionID)
    End If

End Sub

我收到以下错误:

System.Web.Services.dll System.Web.Services.Protocols.SoapException 中发生了“System.Web.Services.Protocols.SoapException”类型的第一次机会异常:无法打开您选择的工作簿。

工作簿的文件格式可能不受支持,或者可能已损坏。在 System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] 参数) 在 SMSMInventory.exServices .ExcelService.OpenWorkbook(String workbookPath, String uiCultureName, String dataCultureName, Status[]& status) at SMSMInventory.LoadSpreadsheetUserControl.OpenExcel(SPFile mySpFile) 自动附加到机器 'FS-CHI- 上的处理 '[4292] w3wp.exe' SPDEV'成功了。System.Web.Services.dll 中出现“System.Web.Services.Protocols.SoapException”类型的第一次机会异常

谁能告诉我我做错了什么?

4

1 回答 1

1

联系微软支持后,他们指出了我的错误:

您无法在浏览器中打开 .xls(请参见下面的 URL):

在 Excel 和 Excel Services 中使用工作簿的区别 http://office.microsoft.com/en-us/excel-help/differences-between-using-a-workbook-in-excel-and-excel-services-HA010021716。 aspx

不支持所有其他 Microsoft Office Excel 文件格式,包括 Office Excel 2007 启用宏的工作簿 (.xlsm) 和 Office Excel 2007 97-2003 工作簿 (.xls)。

另存为 .xlsx 并重试。

使用推荐的格式解决了我的问题。

于 2012-04-24T15:31:12.437 回答