Vba: 프롬프트나 경고 없이 시트를 삭제하는 방법
VBA에서 삭제 메서드를 사용하여 통합 문서의 특정 시트를 삭제하면 Excel에서 시트를 삭제할지 묻는 메시지가 표시됩니다.
그러나 VBA에서 다음 구문을 사용하면 프롬프트나 경고 상자 없이 시트를 삭제할 수 있습니다.
SubDeleteSheets ()
'turn off display alerts
Application.DisplayAlerts = False
'delete Sheet1
Sheets(" Sheet1 ").Delete
'turn back on display alerts
Application.DisplayAlerts = True
End Sub
이 특정 매크로는 프롬프트나 경고 상자 없이 Sheet1 이라는 시트를 삭제합니다.
Application.DisplayAlerts=False 줄은 VBA에 Excel의 모든 표시 경고를 끄도록 지시합니다.
그런 다음 삭제 메서드를 사용하여 특정 시트를 삭제합니다.
그런 다음 Application.DisplayAlerts=True를 사용하여 디스플레이 경고를 다시 활성화합니다.
다음 예에서는 실제로 이 구문을 사용하는 방법을 보여줍니다.
예: VBA를 사용하여 프롬프트나 경고 없이 시트 삭제
세 개의 시트가 포함된 다음 Excel 통합 문서가 있다고 가정합니다.
이제 Sheet1 이라는 시트를 삭제하는 매크로를 만들고 싶다고 가정해 보겠습니다.
다음 매크로를 생성한다고 가정해 보겠습니다.
SubDeleteSheets ()
'delete Sheet1
Sheets(" Sheet1 ").Delete
End Sub
이 매크로를 실행하면 이 시트를 삭제할지 묻는 메시지가 표시됩니다.
그러나 프롬프트 없이 Sheet1을 삭제하기 위해 다음 매크로를 만들 수 있습니다.
SubDeleteSheets ()
'turn off display alerts
Application.DisplayAlerts = False
'delete Sheet1
Sheets(" Sheet1 ").Delete
'turn back on display alerts
Application.DisplayAlerts = True
End Sub
이 매크로를 실행하면 Sheet1 이라는 시트가 자동으로 삭제되고 프롬프트가 나타나지 않습니다.
Sheet1은 삭제되었지만 다른 두 시트는 그대로 유지되었습니다.
추가 리소스
다음 자습서에서는 VBA에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.
VBA: 통합 문서의 시트 수를 계산하는 방법
VBA: 다른 통합 문서에서 데이터를 추출하는 방법
VBA:여러 줄을 삽입하는 방법