Skip to content

Commit 8f177a8

Browse files
committed
Added a batch_merge method [issue #1473]
1 parent a7b04cf commit 8f177a8

1 file changed

Lines changed: 17 additions & 0 deletions

File tree

gspread/worksheet.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2728,6 +2728,23 @@ def merge_cells(self, name: str, merge_type: str = MergeType.merge_all) -> Any:
27282728

27292729
return self.client.batch_update(self.spreadsheet_id, body)
27302730

2731+
def batch_merge(
2732+
self,
2733+
merges: List[Dict[Literal["range", "mergeType"], Union[str | MergeType]]],
2734+
merge_type: MergeType = MergeType.all,
2735+
) -> Any:
2736+
requests = [
2737+
{
2738+
"merges": {
2739+
"range": a1_range_to_grid_range(i["range"], self.id),
2740+
"mergeType": i.get("mergeType", merge_type),
2741+
}
2742+
}
2743+
for i in merges
2744+
]
2745+
2746+
return self.client.batch_update(self.spreadsheet_id, {"requests": requests})
2747+
27312748
@cast_to_a1_notation
27322749
def unmerge_cells(self, name: str) -> JSONResponse:
27332750
"""Unmerge cells.

0 commit comments

Comments
 (0)