Иван, вот еще вариант из старого чулана. Думаю, должен понравиться
Если ты можешь использовать какую-то свободную колонку для простановки метки, которая будет означать, что это строка данных, то можно попробовать так (эту служебную колонку потом можно удалить):
1. Выбираешь пустую колонку. В VBA-примере ниже - это колонка A.
2. Если строку надо выделять и форматитровать, то пишем в эту колонку 1. В противном случае оставляем ячейку пустую.
3. Выполняем "ручную" операцию "Правка - Перейти - Выделить - Константы - Числа".
4. Получившееся выделение распространяем на всю ширину листа.
На VBA это выглядит примерно вот так:
Код:
Sub ExcelVBAMacro1()
Dim rng As Range
'как будто это мы проставили при выводе отчета:
Range("A12:A16,A18:A22,A24:A28,A30:A34,A36:A40").Value = 1
'если строка будет капризничать, то заменить , на ;
Set rng = ActiveSheet.Columns("A:A")
Set rng = rng.SpecialCells(xlCellTypeConstants, 1).EntireRow
rng.Select
End Sub
Результат работы этого кода: