【问题标题】:MS Graph, Excel workbook: How can I determine which cells are merged within a rangeMS Graph,Excel 工作簿:如何确定在一个范围内合并了哪些单元格
【发布时间】:2022-10-31 19:58:01
【问题描述】:

我想使用 Microsoft Graph 来读取 Sharepoint 上 Excel 文档中存储的财务表格的相关信息。表存储在范围或命名范围中(使用 Excel 中的“定义名称”功能)。

我已经能够:

  1. 获取范围内的所有单元格值,例如:sites/{site-id}/drive/items/{item-id}/workbook/names/{named-range}/range
  2. 通过查询每个单独的单元格的格式来获取所有单元格的格式,包括填充、字体、文本对齐和单元格大小,例如:sites/{site-id}/drive/items/{item-id}/workbook/worksheets/{sheet-name}/range(address='B2')/format?$expand=fill,font

    还有 POST 端点来合并/取消合并单元格。但是,我找不到推断单元格是否已合并的方法?

    如何确定在某个范围内合并了哪些单元格?

【问题讨论】:

    标签: microsoft-graph-api msgraph


    【解决方案1】:

    Graph API 在后台使用 Excel API,而 Excel API 本身没有获取合并单元格的方法。

    我试图合并/取消合并单元格范围并检查端点/drive/items/{id}/workbook/worksheets/{id|name}/range(address='<address>') 返回的内容。

    我有一个范围 A1:C3 的未合并单元格。当我调用端点时

    /drive/items/{id}/workbook/worksheets/{id|name}/range(address='A1:C3')

    回应是:

    {
        ...
        "address": "List2!A1:C3",
        "addressLocal": "List2!A1:C3",
        "columnCount": 3,
        "cellCount": 9,
        "columnHidden": false,
        "rowHidden": false,
        "columnIndex": 0,
        ...
        "hidden": false,
        "rowCount": 3,
        "rowIndex": 0,
        ...
    }
    

    当我合并单元格A1:C3 并再次调用相同的端点时

    结果与上一个相似。

    {
        ...
        "address": "List2!A1",
        "addressLocal": "List2!A1",
        "columnCount": 3,
        "cellCount": 9,
        "columnHidden": false,
        "rowHidden": false,    
        "columnIndex": 0,
        ...
        "hidden": false,
        "rowCount": 3,
        "rowIndex": 0,
        ...
    }
    

    唯一的区别是,对于未合并的单元格,addressList2!A1:C3,对于合并的单元格是 List2!A1

    因此,如果您有特定范围,则只能通过检查 address 属性来检查指定范围内的所有单元格是否已合并,但您可以获得其他信息,例如该范围内的某些单元格是否已合并等。

    【讨论】:

    • 我可能有点不清楚。我不想合并/取消合并。我想弄清楚该范围内的哪些单元格已经合并。理想情况下,该信息可能在范围响应中可用,但我也可以查询每个单元格。如果信息以某种方式可用..?
    • 据我了解,addressLocal 只是address 的本地化版本。例如。我是挪威人,A-Z 之后的下一个字母是 ÆØÅ。不幸的是,我不认为这是可用的。
    • 我了解,恐怕没有 API 可以获取合并单元格,但请检查更新的答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多