Макрос для объединения ячеек в столбце, если одни и те же строки объединяются в другом столбце

мне нужна помощь в поиске макроса, который может объединять ячейки по строкам в столбце, если эти же строки уже объединены в другом столбце. Ниже приведен скриншот того, что у меня есть сейчас, который показывает ячейки, которые объединены в столбце A.

before

ниже скриншот-это то, что мне нужно, чтобы электронная таблица выглядела после запуска макроса; соответствующие ячейки в столбце B объединяются.

after

14
задан Scott
25.02.2023 2:59 Количество просмотров материала 3221
Распечатать страницу

1 ответ

Это было самое короткое, что я мог сделать. Я попробовал это с вашим примером, и это сработало для меня.

Sub mergecolumn()

Dim cnt As Integer
Dim rng As Range
Dim str As String

For i = ActiveSheet.UsedRange.Rows.Count To 1 Step -1
    cnt = Cells(i, 1).MergeArea.Count
    Set rng = Range(Cells(i, 2), Cells(i - cnt + 1, 2))

    For Each cl In rng
        If Not IsEmpty(cl) Then str = str + vbNewLine + cl
    Next
    If str <> "" Then str = Right(str, Len(str) - 2)

    Application.DisplayAlerts = False
    rng.Merge
    rng = str
    Application.DisplayAlerts = True

    str = ""
    i = i - cnt + 1
Next i

End Sub
1
отвечен nixda 2023-02-26 10:47

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх