Страницы: 1
RSS
вопрос по Application.EnableEvents
 
Такой вопрос -    
советуют  
при работе с большими диапазонами в макросе применять  
Application.ScreenUpdating = False  
..............  
Application.ScreenUpdating = True  
дерганье картинки действительно снижается  
 
 
зачем нужен тогда для отключения событий  
Application.EnableEvents = False  
.................  
Application.EnableEvents = True  
сколько ни применял его только зависы макросов идут  
 
в чем полезность отключения-включения Application.EnableEvents  
для чего ?
 
Например, макрос по событию Change что-то меняет на листе. При этом СНОВА происходит это событие, а значит, повторно вызывается сам макрос. Так вот для того, чтобы это исключить, и применяем отключение отслеживания событий - Application.EnableEvents = False
 
спасибо
 
Если не знаете, зачем отключать EnableEvents - не отключайте.  
 
Когда начнёте писать сложные макросы, обрабатывающие события листа и книги,  
и столкнётесь с зависаниями (зацикливанием кода, когда изменение одной ячейки кодом вызывает изменение другой, а изменение той ячейки снова обрабатывается макросом, и т.д. по кругу) - тогда поймёте, где нужно применять это отключение.  
 
 
А во все подряд макросы лепить это отключение - совсем не нужно.
 
Application.EnableEvents = False отключает обработку событий. События необходимо отключать для исключения зацикливания или выполнения незапланированных действий например при внесении макросом значения на лист и выполнения макроса обработки событий к примеру    
Private Sub Worksheet_SelectionChange(ByVal Target As Range)  
......  
End Sub
Страницы: 1
Читают тему
Наверх
Loading...