diff --git a/lib/GoogleSpreadsheetWorksheet.js b/lib/GoogleSpreadsheetWorksheet.js index cbc33ac4..0f1f24be 100644 --- a/lib/GoogleSpreadsheetWorksheet.js +++ b/lib/GoogleSpreadsheetWorksheet.js @@ -579,6 +579,26 @@ class GoogleSpreadsheetWorksheet { }); } + async batchMergeCells(ranges, mergeType = 'MERGE_ALL') { + // Request type = `mergeCells` + // https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets/request#MergeCellsRequest + let requests = []; + for(var key in ranges) { + let range = ranges[key]; + if (range.sheetId && range.sheetId !== this.sheetId) { + throw new Error('Leave sheet ID blank or set to matching ID of this sheet'); + } + requests.push({ 'mergeCells': { + mergeType, + range: { + ...range, + sheetId: this.sheetId, + }} + }); + } + this._spreadsheet._makeBatchUpdateRequest(requests); + } + async unmergeCells(range) { // Request type = `unmergeCells` // https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets/request#UnmergeCellsRequest