2012-08-24 2 views
2
Application.ScreenUpdating = False 
Application.ScreenUpdating = True 

두 번째 줄에 대해 모순 된 말을 발견했습니다.
불필요한가요?
누군가 Excel이 각 End Sub 줄 이후에 ScreenUpdating을 자동으로 켭니다.ScreenUpdating True를 쓸 필요가 있습니까?

+6

* "각 End Sub 줄 이후에"* 수행하지는 않지만 프로그램 실행이 Excel (사용자/VBA 코드 또는 매크로에서)로 돌아올 때 수행 할 수 있습니다. 개인적으로,이 경우 내 코드 였고 Excel이 다시 변경하더라도 (분명히 악의적 인/버그가있는 매크로를 피하기 위해) 명시 적으로 수동으로 되돌릴 수 있습니다. [ScreenUpdating 속성에 대한 참조] (http://msdn.microsoft.com/en-us/library/office/bb221605%28v=office.12%29.aspx)에 "ScreenUpdating 속성을 다시" 매크로가 끝나면 true. * " –

+0

@pst. – brettdj

+0

감사합니다. pst. 해결 :) :) – Alegro

답변

2

예, ScreenUpdating은 매크로 완료 후에 항상 True로 설정되어야합니다. 또한 오류가 발생했을 때 복원하는 것을 잊지 마라. 보통 Sub/Function을 종료하기 전에 항상 Application.ScreenUpdating = True를 오류 행글링 코드에 넣습니다. 매크로는 매크로가 끝난 후에이 속성의 자동 설정을 적용하지 않습니다.

관련 문제