2017-08-23 61 views
1

我正试图实现一个Excel文件夹中的现有Excel文件执行功能的Excel计算器网络应用程序。我一直试图在Ruby中实现它,因为我的目标平台是Rails。这是Excel REST API on the Microsoft Graph使用Microsoft Graph API的函数

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 
} 

我想用类似的格式

response = HTTParty.post('.../worbook/functions/sum', headers: { 
    'Authorization' => 'Bearer ACCESS_TOKEN', 
    'Content-Type' => 'application/json' 
    }, 
    body: '{ "number1" : 200, "number2" : 300 }') 

获得其他功能,如sum但我得到的错误

"error": { 
    "code": "InvalidArgument", 
    "message": "The argument is invalid or missing or has an incorrect format." 
} 

我不知道如何去探索更多的API,因为文档是不存在的。

我特别不知道如何读写Excel文档中的单个单元格/范围,以便从中计算出函数。

有没有人设法得到一个体面的工作例子呢?任何人都可以建议任何链接

回答

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 
} 
+0

感谢您的回答?我如何将地址范围传递给它?这并没有真正的记录,或者至少对于那些很少使用它的人来说 - 这不是很直观 –

相关问题