+--------+-----+-----+
| A | D | F |
+--+--+--+--+--+--+--+
| | | | | | | |
+--+--+--+--+--+--+--+
From values merged ranges array:
[[A, , ], [D, ], [F, ]]
to this:
[[A, A, A], [D, D], [F, F]]
But looks like this code not work for me. Where is problem or is there better solution ?
let SpreadSheet = SpreadsheetApp.getActiveSpreadsheet();
let Sheet = SpreadSheet.getSheets()[0];
let CategoryRange = Sheet.getRange(1,1,1,Sheet.getLastColumn());
let CategoryMergedRanges = CategoryRange.getMergedRanges();
let CategoryData = CategoryRange.getValues();
for (let i = 0; i < CategoryMergedRanges.length; i++) {
let CategoryName = "";
for (let j = CategoryMergedRanges[i].getColumn(); j < CategoryMergedRanges[i].getColumn() + CategoryMergedRanges[i].getNumColumns(); j++) {
if (CategoryData[0][j - 1].toString() != "") {
CategoryName = CategoryData[0][i - 1];
}
}
for (let j = CategoryMergedRanges[i].getColumn(); j < CategoryMergedRanges[i].getColumn() + CategoryMergedRanges[i].getNumColumns(); j++) {
CategoryData[0][i - 1] = CategoryName;
}
}
Logger.log(CategoryData);
