Добрый вечер Сегодня heso любезно помог мне с макросом, который объединяет все ячейки в столбце по нужным группам, нужная группа определяется по соседнему столбцу. Если ячейки в первом столбце уже объединены, то объединяем те же ячейки во втором столбце. Количество ячеек в каждой группе разное.
Код
Sub MergeToOneCell()
Application.DisplayAlerts = False
Const sDELIM As String = "; "
Dim rCell As Range
Dim sMergeStr As String
Dim lLastRow%, mcells_count%
lLastRow = Cells(Rows.Count, 2).End(xlUp).Row
For i = 1 To lLastRow
If Cells(i, 1).MergeCells Then
mcells_count = Cells(i, 1).MergeArea.Count - 1
sMergeStr = ""
For Each rCell In Range("B" & i & ":B" & i + mcells_count)
sMergeStr = sMergeStr & rCell.Text & sDELIM
Next rCell
Range("B" & i & ":B" & i + mcells_count).Merge
Range("B" & i & ":B" & i + mcells_count).Value = sMergeStr
i = i + mcells_count
End If
Next
Application.DisplayAlerts = True
End Sub
Но у меня возникла загвоздка: если в столбцах есть объединенные ячейки (объединение по горизонтали, как в примере2 во вложении) макрос не отрабатывает. Помогите добавить условие, чтобы объединенные по строкам ячейки пропускались. Такое возможно?