모두의매뉴얼
🚀

[엑셀/VBA] 알림 메시지를 일시적으로 끄는 방법(DisplayAlerts)

📈12


(실무에서 직접 겪었던 실화를 바탕으로 정리한 내용입니다.)

문제 발생

회사에서 엑셀 파일을 이용해 이런저런 작업을 하다보니 사용한 파일을 저장하고, 그 파일의 내용을 다른 파일에서 가져가고.. 뭐 이런 복잡한 상황이 있습니다.

그런데 저는 게으른 직장인이기 때문에 이런 귀찮은 작업들을 자동화 해두었는데, 서버에 파일을 자동으로 저장하는 과정에서 두 가지 메시지 박스를 받았습니다.

  1. 기존에 같은 이름의 파일이 있는데 저장할까요?
  2. 호환성에 문제가 있을 수도 있는데 진짜 저장할까요?

이 메시지 박스를 볼 때면 거의 기계적으로 예, 예 만 누르기 때문에 사실 이 메시지 박스는 거의 무시하는 수준입니다.

그리고 이것도 귀찮아서 아예 메시지 박스를 뜨지 않게 하는 방법이 없을까 고민했습니다.

문제 해결

역시나 자료를 좀 찾아 보니 DisplayAlerts 이라는 속성을 찾을 수 있었습니다.

이 속성을 False 로 설정하면 매크로가 실행되는 동안 엑셀이나 경고나 메시지가 뜨는 것을 막을 수 있습니다.

제가 실제로 위 상황에서 적용한 예제는 아래와 같습니다.

Application.DisplayAlerts = False

    ActiveWorkbook.SaveAs Filename:= " ... "

Application.DisplayAlerts = True

실제로 현재 사용하고 있는 파일을 매크로 상에서 저장(SaveAs)하기 전에 DisplayAlertsFalse 로 설정해 메시지 박스를 띄우지 않고 바로 저장 한 후, 다시 DisplayAlertsTrue 로 원복 해주는 것입니다. 간단하죠?

이 작업을 통해 해당 엑셀 파일을 자동으로 저장하는 과정에서, 1) 같은 이름의 파일이 있는데 진짜 저장 할 것인지, 2) 호환성 문제가 있을 수도 있는데 진짜 저장 할 것인지와 관련된 메시지 박스를 보지 않고 자동으로 잘 저장 할 수 있음을 확인하였습니다.

더욱 세부적인 내용은 아래 링크를 통해 확인하시기 바랍니다.

링크

끝.

    댓글 남기기

© 모두의매뉴얼 2024
🗝️