Bill에는 세 개의 셀을 테스트하는 “저장 전”매크로가 있습니다. 셀이 비어 있으면 매크로가 사용자의 저장을 중지합니다. 즉, 통합 문서를 저장하려면 먼저 셀을 채워야합니다.

Bill은이 통합 문서를 서식 파일로 저장하려고하지만 세 개의 셀을 지우면 매크로가 서식 파일로 저장하는 것을 중지합니다. 그는 기본적으로 세 개의 셀이 비어있는 상태에서 템플릿이 “깨끗한”상태를 원합니다. 사용자는 템플릿을 기반으로 새 통합 문서를 만든 다음 셀이 채워지지 않으면 저장할 수 없습니다.

Bill은 세 개의 셀이 비어있는 상태에서 통합 문서를 템플릿으로 저장하는 방법을 궁금해합니다.

실제로 템플릿을 저장하기 위해 취할 수있는 다양한 접근 방식이 있습니다.

첫 번째는 통합 문서의 이름을 X27TT3W.xlsm과 같이 다소 난해한 이름으로 변경하는 것입니다. 그런 다음 기본 통합 문서의 이름이 X27TT3W인지 확인하는 몇 가지 논리를 “저장 전”매크로에 추가합니다. 그렇다면 세 셀의 조건에 관계없이 통합 문서 (또는 템플릿)를 저장할 수 있습니다. 템플릿이 저장되면 Windows에서 원하는 이름으로 이름을 바꿀 수 있으며 사용자와 공유 할 수 있습니다. 선택한 난해한 이름을 추측하지 않으면 세 개의 셀이 채워져 있는지 확인하지 않고 통합 문서를 저장할 수 없습니다.

또 다른 방법은 통합 문서에 다른 이벤트 처리기 (통합 문서를 처음 열 때 실행되는 이벤트)를 추가하여 세 셀의 내용을 지우는 것입니다. 다음과 같이 간단 할 수 있습니다.

Private Sub Workbook_Open()

Sheet1.Cells(1,1).Clear     Sheet1.Cells(2,1).Clear     Sheet1.Cells(3,1).Clear End Sub

이 매크로는 A1 : A3의 셀을 지 웁니다. 다른 범위를 지우려면 세 줄을 변경하여 지우려는 셀을 반영하십시오. 그런 다음 세 개의 셀에 무언가를 넣고 ( “저장 전”매크로에서 테스트를 통과하도록) 템플릿으로 저장합니다.

구현하기 매우 쉬운 또 다른 방법은 템플릿을 저장하기 전에 이벤트를 비활성화하는 것입니다. 이것은 매크로 내에서 수행되는 것이 아니라 Visual Basic Editor의 직접 실행 창 내에서 수행됩니다. 다음 한 줄만 입력하면됩니다.

Application.EnableEvents = False

통합 문서를 템플릿으로 즉시 저장 한 다음 Visual Basic Editor의 직접 실행 창에 다음 줄을 입력합니다.

Application.EnableEvents = True

_ExcelTips_는 비용 효율적인 Microsoft Excel 교육을위한 소스입니다.

이 팁 (13547)은 Office 365의 Microsoft Excel 2007, 2013, 2016, 2019 및 Excel에 적용됩니다.