Sharepoint Excel Rest API无法处理名称中包含%的工作簿

7eumitmz  于 2023-03-20  发布在  其他
关注(0)|答案(2)|浏览(108)

在这里,我尝试使用Excel Rest Service从SharePoint获取一些数据。
Excel文件名:UserData.xlsx
这个Excel有两个工作簿
1.工作数据
1.用户薪资%
我能够通过使用下面的查询获得工作数据
.../sites/portal/_vti_bin/excelrest.aspx/Reports/UserData.xlsx/model/Ranges('''Work Data''!A24|M24')?$format=atom
所以这意味着我的URL创建逻辑是正确的,因此我能够在我的C#程序中获得数据。
但是,我无法获得以下URL的第二个工作簿的数据
.../sites/portal/_vti_bin/excelrest.aspx/Reports/UserData.xlsx/model/Ranges(**'''User Salary%**''!A24|M24')?$format=atom
我不明白为什么我可以访问第一个工作簿,但不能访问第二个工作簿;尽管URL看起来是一样的。
一个原因可能是第二个工作簿包含%(用户薪金%),这可能会导致问题,但我无法重命名工作簿,因为它是由不同的部门创建的。
任何帮助都将不胜感激。
先谢了。

h79rfbju

h79rfbju1#

我在从Excel工作表“风险矩阵”中阅读值时也遇到了同样的问题。在Excel REST中创建问题的是空格““。

XYZ.xlsx/model/Ranges('Risk matrix!K15:L15')?$format=json

对我有效的方法是重命名Excel工作表名称:

XYZ.xlsx/model/Ranges('Riskmatrix!K15:L15')?$format=json

我试图寻找其他方法,但由于时间限制,我不得不做上述工作左右。

7d7tgy0s

7d7tgy0s2#

如果工作表名称包含空格,则必须将其放在单引号中,因此即使看起来很奇怪,也需要在查询参数的开头使用两个单引号

XYZ.xlsx/model/Ranges(''Risk matrix'!K15:L15')?$format=json

相关问题