Страницы: 1
RSS
Исключить взаимное влияние SelectionChange и Change
 
Добрый день друзья, не могу объединить на рабочем листе два Макроса, работа то один то другой.
Буду признателен(р.) в помощи решения

1. макрос вычисление в выделенных ячейках суммы, среднего и количества
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
 
   If Intersect(Target, Range("D3:D5")) Is Nothing Then
        Range("D3:D5").ClearContents
        If Target.Cells.Count = 1 Then
             
        Else
            On Error Resume Next
             Range("D3").Value = WorksheetFunction.Average(Target)
             Range("D4").Value = WorksheetFunction.CountA(Target)
            Range("D5").Value = WorksheetFunction.Sum(Target)
            On Error GoTo 0
        End If
    End If
End Sub

2. макрос поиска
Код
Private Sub Worksheet_Change(ByVal Target As Range)
  
       If Not Intersect(Target, Range("A9:D9")) Is Nothing Then
        On Error Resume Next
        ActiveSheet.ShowAllData
        Range("A11").CurrentRegion.AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Range("A8").CurrentRegion
    If Target.Address = [C9].Address Then Range(Cells(12, 22), Cells(Rows.Count, 22)).SpecialCells(xlCellTypeVisible).Cells(1).Select
    End If  
End Sub
Изменено: aravin1983 - 12.06.2021 12:47:06
 
aravin1983, код следует оформлять соответствующим тегом. Ищите такую кнопку (см. скрин) и исправьте своё сообщение.
Изменено: Юрий М - 12.06.2021 11:15:59
 
Юрий картинка не грузится
 
aravin1983, выделяете макрос нажимаете на панели кнопку <...>
Не бойтесь совершенства. Вам его не достичь.
 
Поправил.
После обновления с изображениями есть проблемы (  
 
Спасибо конечно за науку оформления, но вопрос остался актуален, как объединить эти два макроса?
 
Так что нужно? Объединить (запускать один после другого) или разъединить (исключить запуск одного после /во время работы другого)? Вы не описали саму проблему.
Изменено: vikttur - 12.06.2021 13:08:25
 
Помощь по этому вопросу вряд ли понадобится, если ТС прислушается к совету в другой своей теме. Не тратьте время
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Цитата
vikttur написал: Так что нужно?
Да наверное не корректно я описал... По итогу имею что макрос 1 (выводит в ячейки значения суммы, среднего и количества), отменяет возможность работы с копированием, а потому не дает возможность отработать макросу №2
Изменено: vikttur - 12.06.2021 15:20:49
 
Естественно. Чтобы внести изменение в ячейку, ее нужно выделить. Сработает событие выделения диапазона.
Замените SelectionChange на правый клик или двойной клик
Страницы: 1
Наверх