Мой опыт работы с макросами и VBA до сих пор ограничивался созданием кнопки для окраски ячеек, поэтому вам придется извиниться, если это возможно легко исправить.
У меня есть лист шаблона, в которыйБудут вставляться данные на еженедельной основе, содержащие как заголовки, так и задачи. Я собираюсь отфильтровать только заголовки, затем отформатировать эти строки и отфильтровать, автоматизировав это с помощью макроса.
Я записал следующее длясделать это: -
ActiveSheet.Range("$A$4:$H$413").AutoFilter Field:=2, Criteria1:="="
ActiveWindow.SmallScroll Down:=-9
Range("A5:L168").Select
Range("A168").Activate
Selection.SpecialCells(xlCellTypeVisible).Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 3394611
.TintAndShade = 0
.PatternTintAndShade = 0
End With
Selection.Font.Bold = True
Range("I5:L168").Select
Range("L168").Activate
Selection.SpecialCells(xlCellTypeVisible).Select
Selection.ClearContents
Range("C5:H168").Select
With Selection.Font
.Color = -13382605
.TintAndShade = 0
End With
ActiveSheet.Range("$A$4:$H$413").AutoFilter Field:=2
Range("A4").Select
Однако при каждом запуске макроса форматируются одни и те же строки, и поэтому, когда в шаблон вставляются разные данные (содержащие заголовки в разных местах), форматирование, управляемое макросом, не выполняется.не поднимать строки заголовка.
Есть ли способ настроить диапазон так, чтобы макрос применялся только к определенным ячейкам, выбранным пользователем (например, к оставшимся видимым строкам при фильтрации данных)