Skip to content

Commit c06a6d9

Browse files
Implement update_named_range method
Add method to update named ranges in a spreadsheet.
1 parent 1fb4ba7 commit c06a6d9

1 file changed

Lines changed: 26 additions & 1 deletion

File tree

gspread/worksheet.py

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2923,7 +2923,32 @@ def delete_named_range(self, named_range_id: str) -> JSONResponse:
29232923
}
29242924
return self.client.batch_update(self.spreadsheet_id, body)
29252925

2926-
def _add_dimension_group(
2926+
@cast_to_a1_notation
2927+
def update_named_range(self, named_range_id: str, new_name: str) -> JSONResponse:
2928+
"""
2929+
:param str named_range_id: The ID of the named range to update.
2930+
Can be obtained with Spreadsheet.list_named_ranges()
2931+
:param str new_name: The new range to assign in A1 notation.
2932+
2933+
:returns: the response body from the request
2934+
:rtype: dict
2935+
"""
2936+
body = {
2937+
"requests": [
2938+
{
2939+
"updateNamedRange": {
2940+
"namedRange": {
2941+
"namedRangeId": named_range_id,
2942+
"range": a1_range_to_grid_range(new_name, self.id),
2943+
},
2944+
"fields": "range",
2945+
}
2946+
}
2947+
]
2948+
}
2949+
return self.client.batch_update(self.spreadsheet_id, body)
2950+
2951+
def _add_dimension_group(
29272952
self, start: int, end: int, dimension: Dimension
29282953
) -> JSONResponse:
29292954
"""

0 commit comments

Comments
 (0)