Уважаемый Юрий, Спасибо за поправки, все привел в соответствие с правилами размещения сообщений.
Уважаемые пользователи форума, если кому-то еще интересно, получилось на тех же буржуйских форумах найти код по объединению одинаковых ячеек по столбцам. Собственно, вот он:
Код
Sub Merge()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Dim rngMerge As Range, cell As Range
Dim i As Integer
i = Range("A7").End(xlDown).Row
Set rngMerge = Range("A7:A" & i) 'Set the range limits here
MergeAgain:
For Each cell In rngMerge
If cell.Value = cell.Offset(1, 0).Value And IsEmpty(cell) = False Then
Range(cell, cell.Offset(1, 0)).Merge
GoTo MergeAgain
End If
Next
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
В качестве начальной ячейки нужно задать первую, с которой начинаются объединенные. Получается, для каждого столбца нужно будет прописать аналогичный код перед Next, с добавлением порядкового номера к rngMerge (rngMerge2 для B:B, rngMerge3 для C:C и т.п.).
Думаю, аналогично можно сделать и для горизонтальных ячеек (если имеется фиксированная ширина - совсем просто, если нет - наверное тоже можно как-то извернуться).
Осталось только понять, как из первого столбца на второй вкладке сделать горизонтальные заголовки. Буду ковыряться с имеющимся кодом. Если что-то получится - тоже напишу сюда.
Уважаемые пользователи форума, Вот задача, которую мои очень скромные познания VBA не позволяют мне не только решить, но даже понять, решаема ли она в принципе:
Есть сводная таблица по проектам, в которой для удобства просмотра и печати задачи группируются по разделам и проектам (а также порядковым номерам в списке, датам, исполнителям, типам и т.п. - столбцы от A до I включительно) с помощью объединенных ячеек (автор таблицы не я, поэтому настаивать на отказе от использования объединенных ячеек не могу, хотя очень хочется...).
Подскажите, пожалуйста, можно ли средствами VBA разделы (горизонтальные объединенные ячейки) и проекты (вертикальные объединенные ячейки) преобразовать в отдельные ячейки и расставить их напротив соответствующих им задач? А затем провести обратную процедуру (повторяющиеся ячейки сделать объединенными вертикально, а из самой первой колонки на второй вкладке сделать соответствующие заголовки разделов). Пример было-стало во вложении.
Еще раз уточню, что интересует возможность трансформации туда-обратно. В существующих темах ничего подобного не нашел. В интернете на буржуйских форумах нарыл только вот такой код (только для разбора объединенных ячеек):
Код
Dim oneCell As Range, onesFriends As RangeWith ThisWorkbook.Sheets("RAW")
For Each oneCell In .UsedRange
If oneCell.MergeCells Then
Set onesFriends = oneCell.MergeArea
oneCell.UnMerge
onesFriends.Value = oneCell.Value
End If
Next oneCell
End With
Буржуйский пример также во вложении. Надеюсь, опытным пользователям задача покажется интересной (если она в принципе решаема, конечно...) В любом случае спасибо за внимание.