batch_update_spreadsheet_request_body = {
'requests': [
{
"updateCells": {
"rows": [
{
"values": [
{
"userEnteredValue": {
"boolValue": False
}
}
]
}
],
"fields": "userEnteredValue",
"start": {
"sheetId": "target_sheet_id",
"rowIndex": 0,
"columnIndex": 0
}
},
"updateSheetProperties": {
"properties": {
"sheetId": "target_sheet_id",
"title": "Some title"
},
"fields": "title"
}
}
]
}
request = service.spreadsheets().batchUpdate(
spreadsheetId=spreadsheet_id,
body=batch_update_spreadsheet_request_body)
request.execute()
此代码导致以下错误:“'requests [0]'的值无效(一个),已经设置了一个'种类'字段。无法设置'updateSheetProperties'”。详细信息:“ [{'@type':'type.googleapis.com/google.rpc.BadRequest','fieldViolations':[{'field':'requests [0]','description':”无效值位于' requests [0]'(oneof),oneof字段'kind'已设置。无法设置'updateSheetProperties'“}]}]”
但是每个请求主体分别工作:
batch_update_spreadsheet_request_body = {
'requests': [
{
"updateCells": {
"rows": [
{
"values": [
{
"userEnteredValue": {
"boolValue": False
}
}
]
}
],
"fields": "userEnteredValue",
"start": {
"sheetId": "target_sheet_id",
"rowIndex": 0,
"columnIndex": 0
}
}
}
]
}
以及“ updateSheetProperties”请求正文。阅读文档无济于事,我也试图在其他地方找到答案,但无济于事。
这个答案怎么样?
UpdateCellsRequest
并且UpdateSheetPropertiesRequest
包含在请求数组的一个元素中。在这种情况下,请针对请求中的每个元素将它们分开。当这一点反映到您的脚本时,它如下所示。在此修改中,batch_update_spreadsheet_request_body
被修改。
batch_update_spreadsheet_request_body = {
'requests': [
{
"updateCells": {
"rows": [
{
"values": [
{
"userEnteredValue": {
"boolValue": False
}
}
]
}
],
"fields": "userEnteredValue",
"start": {
"sheetId": "target_sheet_id",
"rowIndex": 0,
"columnIndex": 0
}
}
},
{
"updateSheetProperties": {
"properties": {
"sheetId": "target_sheet_id",
"title": "Some title"
},
"fields": "title"
}
}
]
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句