如何连接到SharePoint 2013中的Excel工作簿并进行更新
我正在创build一个命令行应用程序,我想连接到一个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”有几种可能的原因:
- 文件名或path不存在。
- 该文件正在被另一个程序使用。
- 您尝试保存的工作簿与当前打开的工作簿具有相同的名称。
实际上,它似乎是试图在我的机器上打开一个Excel桌面的实例。
对不起,这样一个开放的问题,但我不知道如何连接到SharePoint网站。
提前致谢!
如果您正在文档库中使用文档,请在尝试保存文档之前检查确认文档正在检出。 我正在使用一个类似的过程,但使用报告库,而不是文档库,并能够保存文件没有签出/在。