有没有一种编程方式可以编辑Office 365 Excel文档?

11

我需要更新一个看起来像这样的电子表格。

enter image description here

这并不难。 我只需进入最后一行,然后在相应的列中输入所需内容即可。 我想自动化此过程。 我首先尝试了Selenium Webdriver,但结果太慢,效果也不确定。 接下来我检查了API,但看起来Excel没有API。

我可以使用Selenium下载文件,然后使用C#应用程序将其修改为Excel文件,然后重新上传。 现在我在思考是否Google文档有更简单的解决方案。

所以是否有任何方法可以编程修改在线Excel电子表格呢?


要编辑在哪里/如何?您想在线编辑吗?还是下载一个 .xlsx 文件本地更改? - Marc B
理想情况下,只需调用 REST API 即可进行更新。 - user2102611
2个回答

10

我知道4种通过JavaScript或REST编程修改Excel Online的选项:

  1. Office Add-ins平台:https://dev.office.com/docs/add-ins/overview/office-add-ins
  2. Excel Services JavaScript API - EWA Excel Web Access命名空间(已有几年未更新):https://msdn.microsoft.com/en-us/library/hh315812(v=office.14).aspx
  3. Excel Services REST API(通过SharePoint Online):https://msdn.microsoft.com/en-us/library/ee556842(v=office.14).aspx
  4. Microsoft Graph REST API(Excel对象目前处于Beta版本):https://graph.microsoft.io/en-us/docs/api-reference/beta/resources/excel

据我所知,您无法使用Excel REST API修改Excel Online文档。 - Pyroglyph
有关此问题的任何完整示例?3和4个选项? - PreguntonCojoneroCabrón

1

我不知道从什么时候开始可以,但现在您可以向表格添加行,而且测试起来非常容易,在图形浏览器上。

请记住,首先需要通过API文档设置表格。

来自文档:

将行添加到表格末尾。请注意,API可以使用此API接受多个行数据。一次添加一行可能会导致性能降低。建议的方法是将行批处理在单个调用中而不是进行单行插入。为了获得最佳结果,请在应用程序端收集要插入的行,并执行单行添加操作。尝试使用行数确定单个API调用中要使用的理想行数。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接