2017-08-23 88 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

感謝您的回答?我如何將地址範圍傳遞給它?這並沒有真正的記錄,或者至少對於那些很少使用它的人來說 - 這不是很直觀 –

相關問題