Google 张 APIv4 列分组

Google sheets APIv4 grouping of columns

我要

"endIndex": end_number 
TypeError: unhashable type: 'dict'

此代码错误:

def group_columns(self,key,sheet_name,column_start,column_stop):  
        sheetId=self.get_id(key,sheet_name)
        start_number=col2num(column_start)-1
        end_number=col2num(column_stop)
        print(end_number)
        data={'requests':
          [
            {
              "updateSheetProperties": {
                    "columnGroups": [
                        {
                            "range": {
                                        { "sheetId": sheetId,
                                          "dimension": "COLUMNS",
                                          "startIndex": start_number,
                                          "endIndex": end_number
                                        }
                             },
                             "depth": 1,
                             "collapsed": "True"
                        }

                    ]
               } 

             }
          ]
        }
        results=self.service.spreadsheets().batchUpdate(spreadsheetId=key, body=data).execute()   

我想做的就是将几列分组,然后按照此处的参考:https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets#DimensionGroup

您想在电子表格中创建组。如果我的理解是正确的,这个答案怎么样?

1。添加群组

Your request body can be used when the spreadsheet is created using sheets.spreadsheets.create.如果要将组添加到现有电子表格,可以使用以下请求正文。

data = {
    "requests": [
        {
            "addDimensionGroup": {
                "range": {
                    "dimension": "COLUMNS",
                    "sheetId": sheetId,
                    "startIndex": start_number,
                    "endIndex": end_number
                }
            }
        }
    ]
}

2。更新群组

如果要更新现有组,可以使用以下请求正文。在这种情况下,请使用与您要更新的现有组相同的范围。

data = {
    "requests": [
        {
            "updateDimensionGroup": {
                "dimensionGroup": {
                    "range": {
                        "dimension": "COLUMNS",
                        "sheetId": sheetId,
                        "startIndex": start_number,
                        "endIndex": end_number
                    },
                    "depth": 1,
                    "collapsed": true
                },
                "fields": "*"
            }
        }
    ]
}

来自 the document

This field (collapsed) is true if this group is collapsed. A collapsed group remains collapsed if an overlapping group at a shallower depth is expanded.

参考:

如果我误解了你的问题,我很抱歉。