繁体   English   中英

如何连接到驻留在SharePoint 2013中的Excel工作簿并对其进行更新

[英]How to connect to an Excel workbook that lives in SharePoint 2013 and update it

我正在创建一个命令行应用程序,并且我想连接到具有要更新的工作簿的SharePoint网站。

我什至不知道从哪里开始,但我想我有问题。

  • 我可以为此使用什么API? 它必须是已经内置的东西,如果可能的话,必须不是第三方API :)
  • 连接完成后,我可以打开电子表格了,是否也可以从一张纸切换到另一张纸?

我试图使用这样的一些代码,但是没有用。

    private static void GetExcelSheetNames(string filename)
    {
        var xls = new Microsoft.Office.Interop.Excel.Application();
        xls.Visible = true;
        xls.DisplayAlerts = false;
        var workbook = xls.Workbooks.Open(Filename: filename, IgnoreReadOnlyRecommended: true, ReadOnly: false);
        try
        {
            // Refresh the data from data connections
            workbook.RefreshAll();
            // Wait for the refresh occurs - *wish there was a better way than this.
            System.Threading.Thread.Sleep(5000);
            // Save the workbook back again
            workbook.SaveAs(Filename: filename);  // This is when the Exception is thrown
            // Close the workbook
            workbook.Close(SaveChanges: false);
        }
        catch (Exception ex)
        {
            //Exception message is "Cannot save as that name. Document was opened as read-only."
        }
        finally
        {

            xls.Application.Quit();
            xls = null;
        }
    }

我得到的异常是:

Microsoft Excel无法访问文件“ https // url / bla / bla / bla / workbook.xlsx”,可能有以下几种原因:

  • 文件名或路径不存在。
  • 该文件正在被另一个程序使用。
  • 您要保存的工作簿与当前打开的工作簿具有相同的名称。

实际上,似乎正在尝试在我的计算机中打开Excel Desktop实例。

很抱歉遇到这样一个悬而未决的问题,但我真的不知道该如何连接到SharePoint网站。

提前致谢!

如果您正在文档库中使用文档,请在尝试保存文档之前检查并确保已签出该文档。 我正在使用类似的过程,但是使用的是报告库而不是文档库,并且能够保存文档而无需签入/签入。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM