google sheets api选择非相邻单元格

2024-10-01 07:24:59 发布

您现在位置:Python中文网/ 问答频道 /正文

选择多个非相邻单元格的范围是什么?

我正在尝试更新与工作表(A2和A5)不相邻的单元格。我知道如何更新相邻的单元格:“SheetName”!A2:5,但我怎样才能只更新第二和第五单元格。我正在使用python:

    sheetRange = str("'Telegram'!A2:5")
    value_range = [['a'],['False'],['True']]
    value_range = {
        "values": value_range,
    }
    request = self.service.spreadsheets().values().update(spreadsheetId=self.spreadsheetid, range=sheetRange,
                                                          valueInputOption="RAW",
                                                          body=value_range )
    response = self.requestExecute(request)
    return response

Tags: selffalsetruea2valueresponserequestservice
1条回答
网友
1楼 · 发布于 2024-10-01 07:24:59

用一下怎么样是否更新sheets.spreadsheets.batchUpdate?通过使用sheets.spreadsheets.batchUpdate,您可以像“A2”和“A5”一样更新每个单元格。下面的示例脚本来自here。您可以从这个脚本中看到请求正文。在

请注意,在这种情况下,GridRange而不是{a3}用于单元格的坐标。

示例脚本:

这个示例脚本假设您已经准备好使用sheetsapiv4。在

batch_update_spreadsheet_request_body = {
    "requests":
    [
        {
            "updateCells":
            {
                "range":
                {
                    "sheetId": #####, # Please input your sheetId.
                    "startRowIndex": 1,
                    "endRowIndex": 2,
                    "startColumnIndex": 0,
                    "endColumnIndex": 1
                },
                "rows":
                [
                    {
                        "values":
                        [
                            {
                                "userEnteredValue":
                                {
                                    "stringValue": "sample value for A2"
                                }
                            }
                        ]
                    }
                ],
                "fields": "*"
            }
        },
        {
            "updateCells":
            {
                "range":
                {
                    "sheetId": #####,  # Please input your sheetId.
                    "startRowIndex": 4,
                    "endRowIndex": 5,
                    "startColumnIndex": 0,
                    "endColumnIndex": 1
                },
                "rows":
                [
                    {
                        "values":
                        [
                            {
                                "userEnteredValue":
                                {
                                    "stringValue": "sample value for A5"
                                }
                            }
                        ]
                    }
                ],
                "fields": "*"
            }
        }
    ]
}
request = service.spreadsheets().batchUpdate(spreadsheetId=spreadsheet_id, body=batch_update_spreadsheet_request_body)
response = request.execute()
print(response)

参考:

如果我误解了你的问题,对不起。在

相关问题 更多 >