Excel: Фильтр по свойствам шрифта
Если это не так - меня поправят, а пока вот:
Dim col, row As Integer
Dim i, j As Integer
row = Selection.CurrentRegion.Rows.Count
col = Selection.CurrentRegion.Columns.Count
For i = 2 To row
For j = 1 To col
If (Cells(i, j).Font.Bold = True) Then
Cells(i, j).Copy Cells(i, col + j + 1)
End If
Next j
Next i
Cells(row, col + 2).CurrentRegion.Select
Selection.PrintOut Copies:=1, Collate:=True
End Sub
Возможно и так) Но, думаю, решения похожие..
В приведенном коде мною был не учитан тот факт, что насколько я понял, есть строки с обычным форматом, а есть с жирным шрифтом - следовательно порядок перебора уменьшается. Необходимо лишь проверять первую ячейку строки диапозона. Копировать всю строку, если необходимо, печатать, а потом удалять созданный диапозон.
Примерно то же самое происходит и с userфильтром - как вам нововведение:D. - аналогичный цикл, только вместо копирования происходит скрытие. Аналогичное восстановление - выделяется диапозон и отображаются все строки(если конечно в первоначальном состоянии какие-то строки уже были скрыты - этот вариант не подойдет и придется запоминать скрытые userфильтром).
При моем же варианте такой проблемы нет, хотя, теоретически, думаю копирование должно происходить на порядок дольше!!