如何使用MS Graph从Excel表格范围中读取文本?

时间:2018-04-13 05:00:40

标签: excel rest microsoft-graph

我以前使用以下网址从excel中的表中读取文本:

https://graph.microsoft.com/v1.0/me/drive/root:/my-folder%5Cmy-workbook.xlsx:/workbook/worksheets('MyWorksheet')/tables('MyTable')/range/text

现在,我正在回复此内容:

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#microsoft.graph.Json"
}

我可以使用相同的网址访问该范围但没有\text细分。例如,对以下URL的请求

https://graph.microsoft.com/v1.0/me/drive/root:/my-folder%5Cmy-workbook.xlsx:/workbook/worksheets('MyWorksheet')/tables('MyTable')/range

结果:

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#workbookRange",
    "@odata.type": "#microsoft.graph.workbookRange",
    "@odata.id": "/users('xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx')/drive/root/workbook/worksheets(%27%7Bxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx%7D%27)/tables(%2719%27)/range()",
    "address": "MyWorksheet!C6:BB18",
    "addressLocal": "MyWorksheet!C6:BB18",
    "cellCount": 676,
    "columnCount": 52,
    "columnHidden": false,
    "columnIndex": 2,
    "formulas": [ ... ],
    "formulasLocal": [ ... ],
    "formulasR1C1": [ ... ],
    "hidden": false,
    "numberFormat": [ ... ],
    "rowCount": 13,
    "rowHidden": false,
    "rowIndex": 5,
    "text": [
        [
            "Text",
            "From",
            "The",
            "Range",
            ...,
        ]
    ]
    "values": [ ... ],
    "valueTypes": [ ....]
}

text属性存在且包含预期数据。

MS Graph documentation包含范围资源上的文本属性。

如上所述,我相信这项工作更早,所以我假设这是由于MS Graph中的一些错误/更改/限制。

有人可以建议如何直接读取该表格范围内的文本(和/或我收到该回复的原因)吗?

1 个答案:

答案 0 :(得分:1)

Textmicrosoft.graph.workbookRang的属性,但不是端点。我不确定/range/text过去是如何工作的,但我不会指望它。

至于只返回文本,您可以使用$select查询参数:

/me/drive/root:/{path}:/workbook/worksheets('{id}')/tables('{id}')/range?$select=text