У меня есть база данных с заголовками категорий, которые содержат форматирование .Interior.Color и .Font, которое применяется к выбранным строкам при щелчке по ячейкам заголовков категорий.
Я хочу добавить функциональность, которая приДвойной щелчок по ячейке заголовка категории, все строки в документе, которые не соответствуют этой категории, будут скрыты.
Я добавил следующее в свой Лист1 (Код):
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, HideRow As
Boolean)
If Not Application.Intersect(Target, Range("C1:W1")) Is Nothing Then
LstRow = Cells.Find(What:="*", After:=Range("A1"), lookat:=xlPart, _
LookIn:=xlFormulas, SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious, MatchCase:=False).Row
'Finds last row with data
Set Dyn_AllEntries = ActiveSheet.Range("C5:C" & LstRow) 'range w/ all data
If HiddenRows <> True Then 'Checks to see if the macro was already run
For Each cl In Dyn_AllEntries
If cl.Offset(0, 11) <> Target Then 'check if category matches
cl.EntireRow.Hidden = True 'if not, hide row
End If
Next cl
HiddenRows = True 'set boolean, to verify the macro is active
ElseIf HiddenRows = True Then 'check if macro is active
For Each cl In Dyn_AllEntries
If cl.Offset(0, 11) <> Target And LCase(cl.Offset(0, -2)) <> _
"true" Then 'if category not match & row not hidden by other macro
cl.EntireRow.Hidden = False 'unhide row
End If
Next cl
HiddenRows = False 'set boolean so I know macro isn't active
End If
End If
End Sub
Сейчаскод, для которого я написал при выделении ячейки, выдает ошибку при компиляции:
Объявление процедуры не соответствует описанию события или процедуры с тем же именем.
Мой код "одного клика" называется Private Sub Worksheet_SelectionChange(ByVal Target As Range, HideText As Boolean)
, а мой код "двойного щелчка" - Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, HideRow As Boolean)
.
Оба находятся в модуле Sheet1 (Код).Мой код «одного щелчка» не изменился, поскольку он работал до того, как я добавил код «двойного щелчка».
Разве невозможно запустить два разных макроса одной и той же ячейки для разных действий выбора?
Вот как выглядит лист, если это поможет: ![Sheet1](https://i.stack.imgur.com/FeTrs.png)