Applies ToMac용 Excel 2016

마지막 업데이트: 2019년 4월 10일

문제

Mac용 Excel에서 2017년 10월에 새로운 Visual Basic Editor가 도입되었습니다. 이 새로운 VB Editor를 사용할 때 코드 창의 맨 위에 있는 드롭다운 메뉴에서 선택하여 개체 선언을 작성하면 문제가 발생합니다.

왼쪽의 드롭다운을 클릭하고 목록에서 항목을 선택하면 오른쪽의 드롭다운 목록에 선택한 이벤트에 대한 코드가 표시됩니다. 오른쪽의 드롭다운 목록에서 항목을 추가로 선택하여 선택한 이벤트를 처리하는 코드를 추가로 작성할 수 있습니다.

개체 선택 드롭다운 목록을 표시하는 VBE 편집기

대신 코드가 작성되지 않았다는 오류가 발생합니다.

Microsoft Visual Basic 오류: 변수 사용 및 자동화 형식이 Visual Basic에서 지원되지 않음

상태: 해결 방법

이 문제에 대해 다음 해결 방법 중 하나를 선택합니다.

해결 방법 1

Windows용 Excel을 실행하는 컴퓨터에서 비슷한 단계를 수행한 다음 코드를 Mac용 Excel로 복사할 수 있습니다.

해결 방법 2

MSDN으로 이동하여 사용하려는 이벤트의 구문을 찾고 VBA 프로젝트에 코드를 수동으로 입력할 수 있습니다. 이 문서에서는 Microsoft Excel "workbook" 이벤트에 대해 설명합니다(Workbook Events(Workbook 이벤트)).

해결 방법 3

아래 샘플에서 적절한 이벤트 코드를 복사하여 VBA 프로젝트에 붙여넣습니다. 각 이벤트에 대해 "Private Sub..."에서 "End Sub"(이 두 항목 포함)까지 복사해야 합니다.

Private Sub Workbook_Activate() End Sub

Private Sub Workbook_AddinInstall() End Sub

Private Sub Workbook_AddinUninstall() End Sub

Private Sub Workbook_AfterRemoteChange() End Sub

Private Sub Workbook_AfterSave(ByVal Success As Boolean) End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean) End Sub

Private Sub Workbook_BeforePrint(Cancel As Boolean) End Sub

Private Sub Workbook_BeforeRemoteChange() End Sub

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) End Sub

Private Sub Workbook_Deactivate() End Sub

Private Sub Workbook_NewChart(ByVal Ch As Chart) End Sub

Private Sub Workbook_NewSheet(ByVal Sh As Object) End Sub

Private Sub Workbook_Open() End Sub

Private Sub Workbook_PivotTableCloseConnection(ByVal Target As PivotTable) End Sub

Private Sub Workbook_PivotTableOpenConnection(ByVal Target As PivotTable) End Sub

Private Sub Workbook_RowsetComplete(ByVal Description As String, ByVal Sheet As String, ByVal Success As Boolean) End Sub

Private Sub Workbook_SheetActivate(ByVal Sh As Object) End Sub

Private Sub Workbook_SheetBeforeDelete(ByVal Sh As Object) End Sub

Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean) End Sub

Private Sub Workbook_SheetBeforeRightClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean) End Sub

Private Sub Workbook_SheetCalculate(ByVal Sh As Object) End Sub

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range) End Sub

Private Sub Workbook_SheetDeactivate(ByVal Sh As Object) End Sub

Private Sub Workbook_SheetFollowHyperlink(ByVal Sh As Object, ByVal Target As Hyperlink) End Sub

Private Sub Workbook_SheetPivotTableAfterValueChange(ByVal Sh As Object, ByVal TargetPivotTable As PivotTable, ByVal TargetRange As Range) End Sub

Private Sub Workbook_SheetPivotTableBeforeAllocateChanges(ByVal Sh As Object, ByVal TargetPivotTable As PivotTable, ByVal ValueChangeStart As Long, ByVal ValueChangeEnd As Long, Cancel As Boolean) End Sub

Private Sub Workbook_SheetPivotTableBeforeCommitChanges(ByVal Sh As Object, ByVal TargetPivotTable As PivotTable, ByVal ValueChangeStart As Long, ByVal ValueChangeEnd As Long, Cancel As Boolean) End Sub

Private Sub Workbook_SheetPivotTableBeforeDiscardChanges(ByVal Sh As Object, ByVal TargetPivotTable As PivotTable, ByVal ValueChangeStart As Long, ByVal ValueChangeEnd As Long) End Sub

Private Sub Workbook_SheetPivotTableChangeSync(ByVal Sh As Object, ByVal Target As PivotTable) End Sub

Private Sub Workbook_SheetPivotTableUpdate(ByVal Sh As Object, ByVal Target As PivotTable) End Sub

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range) End Sub

Private Sub Workbook_SheetTableUpdate(ByVal Sh As Object, ByVal Target As TableObject) End Sub

Private Sub Workbook_Sync(ByVal SyncEventType As Office.MsoSyncEventType) End Sub

Private Sub Workbook_WindowActivate(ByVal Wn As Window) End Sub

Private Sub Workbook_WindowDeactivate(ByVal Wn As Window) End Sub

Private Sub Workbook_WindowResize(ByVal Wn As Window) End Sub

Private Sub Worksheet_Activate()

End Sub

Private Sub Worksheet_BeforeDelete()

End Sub

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

End Sub

Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)

End Sub

Private Sub Worksheet_Calculate()

End Sub

Private Sub Worksheet_Change(ByVal Target As Range)

End Sub

Private Sub Worksheet_Deactivate()

End Sub

Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)

End Sub

Private Sub Worksheet_LensGalleryRenderComplete()

End Sub

Private Sub Worksheet_PivotTableAfterValueChange(ByVal TargetPivotTable As PivotTable, ByVal TargetRange As Range)

End Sub

Private Sub Worksheet_PivotTableBeforeAllocateChanges(ByVal TargetPivotTable As PivotTable, ByVal ValueChangeStart As Long, ByVal ValueChangeEnd As Long, Cancel As Boolean)

End Sub

Private Sub Worksheet_PivotTableBeforeCommitChanges(ByVal TargetPivotTable As PivotTable, ByVal ValueChangeStart As Long, ByVal ValueChangeEnd As Long, Cancel As Boolean)

End Sub

Private Sub Worksheet_PivotTableBeforeDiscardChanges(ByVal TargetPivotTable As PivotTable, ByVal ValueChangeStart As Long, ByVal ValueChangeEnd As Long)

End Sub

Private Sub Worksheet_PivotTableChangeSync(ByVal Target As PivotTable)

End Sub

Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)

End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

End Sub

Private Sub Worksheet_TableUpdate(ByVal Target As TableObject)

End Sub

추가 리소스

아이콘 전문가(뇌, 톱니 바퀴형)

전문가에게 묻기

전문가와 의견을 나누고, 최신 Excel 뉴스, 업데이트 및 모범 사례를 논의하고, Microsoft 블로그를 읽어 보세요.

Excel 기술 커뮤니티

아이콘 커뮤니티

커뮤니티에서 도움 받기

질문하고 지원 에이전트, MVP, 엔지니어 및 다른 Excel 사용자로부터 해결 방법을 찾아보세요.

Answers의 Excel 포럼

아이콘 기능 요청(전구, 아이디어)

새 기능 제안

언제든지 여러분의 의견과 제안을 환영합니다. 아이디어를 공유하세요. 경청하고 있습니다.

피드백 제공

참고 항목

Mac용 Excel의 최근 문제에 대한 수정 또는 해결 방법

도움이 더 필요하세요?

더 많은 옵션을 원하세요?

구독 혜택을 살펴보고, 교육 과정을 찾아보고, 디바이스를 보호하는 방법 등을 알아봅니다.

커뮤니티를 통해 질문하고 답변하고, 피드백을 제공하고, 풍부한 지식을 갖춘 전문가의 의견을 들을 수 있습니다.

일반적인 문제에 대한 해결 방법을 찾거나 지원 에이전트로부터 도움을 받으세요.