|
Объединение ячеек без потери данных, если объединены ячейки в столбце рядом
|
|||
---|---|---|---|
#18+
Всем привет! Есть таблица из двух столбцов, в столбце "А" часть ячеек объединена, нужно объединить такое же количество ячеек в столбце "В", без потери данных. Здесь, на форуме, нашел макрос, но он оставляет текст только из первой ячейки. Пример макроса и файла ниже. авторSub merge2() Dim i&, j&, k& Application.DisplayAlerts = False Application.ScreenUpdating = False j = ActiveSheet.UsedRange.Row For i = j To j + ActiveSheet.UsedRange.Rows.Count - 1 If Cells(i, 1).MergeCells Then j = Cells(i, 1).MergeArea.Rows.Count For k = 1 To 3 With Cells(i, 1).Offset(0, k).Resize(j, 1) .MergeCells = True .VerticalAlignment = xlVAlignCenter End With Next k i = i + j - 1 End If Next i Application.ScreenUpdating = False Application.DisplayAlerts = True End Sub ... |
|||
:
Нравится:
Не нравится:
|
|||
24.08.2014, 08:42 |
|
Объединение ячеек без потери данных, если объединены ячейки в столбце рядом
|
|||
---|---|---|---|
#18+
Всем спасибо, кто переживал за меня!)) Решение найдено: авторSub merge3() Dim i&, j&, k& Application.DisplayAlerts = False Application.ScreenUpdating = False With ActiveSheet.UsedRange For i = 1 To .Rows.Count If .Cells(i, 1).MergeCells Then j = .Cells(i, 1).MergeArea.Rows.Count For k = 1 To 1 With .Cells(i, k + 1).Resize(j, 1) .Cells(1).Value = Join(WorksheetFunction.Transpose(.Value)) .MergeCells = True .VerticalAlignment = xlVAlignCenter End With Next k i = i + j - 1 End If Next i End With Application.ScreenUpdating = True Application.DisplayAlerts = True End Sub ... |
|||
:
Нравится:
Не нравится:
|
|||
24.08.2014, 10:59 |
|
|
start [/forum/topic.php?fid=61&fpage=55&tid=2173881]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
25ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
31ms |
get tp. blocked users: |
1ms |
others: | 290ms |
total: | 387ms |
0 / 0 |