특정 통합 문서를 열 때마다 Excel에서 자동으로 프로 시저를 실행하도록 할 수 있습니다. 예를 들어 통합 문서가 열릴 때 사용자에게 전날의 데이터를 다른 파일에 저장하는 등의 작업을 수행할지 묻는 절차를 실행할 수 있습니다.

통합 문서가 열릴 때 자동으로 프로 시저를 실행하려면 Auto_Open () 프로 시저의 이름을 지정하기 만하면됩니다. 따라서 다음 절차는 포함 된 통합 문서를 열 때마다 자동으로 실행됩니다.

Sub Auto_Open()

Dim strMsg As String     Dim intBoxType As Integer     Dim strTitle As String     Dim intUpdate As Integer     Dim strDefault As String     Dim strOldFile As String     Dim intStatusState As Integer

strMsg = "Do you want to save yesterday's transactions?"

intBoxType = vbYesNo + vbQuestion     strTitle = "Automatic Backup Routine"

intUpdate = MsgBox(Msg, BoxType, Title)

If intUpdate = vbYes Then         strMsg = "Which filename would you like use?"

strDefault = "OLD.DAT"

strOldFile = InputBox(strMsg, strTitle, strDefault)

intStatusState = Application.DisplayStatusBar         Application.DisplayStatusBar = True         Application.StatusBar = "Updating past months..."

UpdateYesterday         Application.StatusBar = False         Application.DisplayStatusBar = intStatusState     End If End Sub

(이 절차는 예제입니다. 실제 업데이트를 수행하는 UpdateYesterday라는 함수를 호출하므로 시스템에서 제대로 실행되지 않습니다.)

이 매크로는 연결된 통합 문서를 열 때마다 자동으로 실행됩니다. 또한 코드를 수정하고 첫 번째 줄을 다음과 같이 변경하여 ThisWorkbook 개체 내에 배치 할 수도 있습니다.

Private Sub Workbook_Open()

많은 사람들이 Auto_Open을 이러한 유형의 매크로의 “이전 방식”으로 사용하고 Workbook_Open을 “새로운 방식”으로 사용한다고 생각합니다. 그것은 사실입니다. Workbook_Open 메서드는 Auto_Open보다 이러한 유형의 매크로에 대한보다 개체 지향적 인 접근 방식입니다. 그러나 실제로는 둘 사이에 거의 차이가 없습니다.

_ 참고 : _

이 페이지 (또는 ExcelTips 사이트의 다른 페이지)에 설명 된 매크로를 사용하는 방법을 알고 싶다면 유용한 정보가 포함 된 특별 페이지를 준비했습니다.

link : / excelribbon-ExcelTipsMacros [새 브라우저 탭에서 특별 페이지를 열려면 여기를 클릭하세요].

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

이 팁 (2289)은 Microsoft Excel 97, 2000, 2002 및 2003에 적용됩니다. 여기에서 Excel (Excel 2007 이상)의 리본 인터페이스에 대한이 팁의 버전을 찾을 수 있습니다.

link : / excelribbon-Running_a_Procedure_when_a_Workbook_is_Opened [통합 문서가 열릴 때 프로 시저 실행].