我正在尝试实施一个Excel计算器网络应用程序,该应用程序在位于OneDrive for Business文件夹上的现有Excel文件上执行功能。我一直在尝试在Ruby中实现它,因为我的目标平台是Rails。这是Excel REST API on the Microsoft Graph
response = HTTParty.post('..../workbook/functions/pmt', headers: {
'Authorization' => 'Bearer ACCESS_TOKEN, '
Content - Type ' => '
application / json ' },
body: '{ "rate": 0.035, "nper": 20, "pv": -2000 }') puts response
有了这个回复:
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#workbookFunctionResult",
"@odata.type": "#microsoft.graph.workbookFunctionResult",
"@odata.id": ".../drive/root/children('test.xlsx')/workbook/functions/pmt()",
"error": null,
"value": 140.722153566052
}
我正在尝试使用类似格式
来获取sum
等其他功能
response = HTTParty.post('.../worbook/functions/sum', headers: {
'Authorization' => 'Bearer ACCESS_TOKEN',
'Content-Type' => 'application/json'
},
body: '{ "number1" : 200, "number2" : 300 }')
但是我收到了错误
"error": {
"code": "InvalidArgument",
"message": "The argument is invalid or missing or has an incorrect format."
}
我不确定如何在实际上重要的地方探索更多的API,因为文档不存在。
我特别不知道如何在Excel文档中读取和写入单个单元格/范围以获取从中计算出的函数。
有没有人设法得到一个体面的例子来解决这个问题?任何人都可以建议任何链接吗?
答案 0 :(得分:0)
您可以在Workbook主题下找到有关Excel功能的文档。还有一个Excel Functions可用的完整列表。
对于采用一系列单元格的函数,可以将值作为数组传递。例如,要使用sum
,您需要传入:
{
"values" : [100,100,50,100]
}
这将返回:
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#workbookFunctionResult",
"@odata.type": "#microsoft.graph.workbookFunctionResult",
"@odata.id": "/users({user-id})/drive/items({item-id})/workbook/functions/sum()",
"error": null,
"value": 350
}