Błąd „Zmienna używa typu automatyzacji, który nie jest obsługiwany przez język Visual Basic” w Edytorze Visual Basic w programie Excel dla komputerów Mac

Ostatnia aktualizacja: 10 listopada 2017 r.

PROBLEM

W programie Excel dla komputerów Mac w październiku 2017 r. wprowadzono nowy edytor Visual Basic. W tym nowym edytorze VB występuje problem z tworzeniem deklaracji obiektu przez wybranie z menu rozwijanego w górnej części okna kodu.

Jeśli klikniesz menu rozwijane z lewej i wybierzesz pozycję z listy, dla zdarzenia wybranego z listy rozwijanej po prawej powinien zostać pobrany kod. Możesz dokonać kolejnych wyborów z listy rozwijanej po prawej, aby utworzyć dodatkowy kod do obsługi wybranego zdarzenia.

Edytor VBE z pokazaną listą rozwijaną wyboru obiektu

Zamiast tego występuje błąd z informacją, że kod nie został utworzony.

Błąd języka Microsoft Visual Basic: zmienna używa typu automatyzacji, który nie jest obsługiwany przez język Visual Basic.

STAN: OBEJŚCIE

W przypadku tego problemu wybierz jedno z tych obejść:

OBEJŚCIE NR 1

Możesz wykonać podobną czynność na komputerze z programem Excel dla systemu Windows, a następnie skopiować kod do programu Excel dla komputerów Mac.

OBEJŚCIE NR 2

Możesz przejść do witryny MSDN i znaleźć składnię dla zdarzenia, którego chcesz użyć, a następnie ręcznie wpisać kod do projektu języka VBA. W tym artykule opisano zdarzenia „skoroszytu” programu Microsoft Excel — Zdarzenia skoroszytu.

OBEJŚCIE NR 3

Skopiuj kod odpowiedniego zdarzenia z przykładów poniżej i wklej go do projektu VBA. Dla każdego zdarzenia upewnij się, że kopiujesz zawartość od fragmentu „Private Sub...” do fragmentu „End Sub” włącznie.

    
    

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

Ikona ekspertów (mózg, koła zębate)

Zapytaj ekspertów

Nawiązuj kontakty z ekspertami, omawiaj najnowsze wiadomości, aktualizacje i najlepsze rozwiązania dotyczące programu Excel oraz czytaj naszego bloga.

Społeczność techniczna poświęcona programowi Excel

Ikona społeczności

Uzyskaj pomoc społeczności

Zadaj pytanie i poznaj rozwiązanie dzięki przedstawicielom obsługi technicznej, specjalistom MVP, inżynierom i innym użytkownikom programu Excel.

Forum poświęcone programowi Excel w witrynie Answers

Ikona sugestii dotyczącej funkcji (żarówka, pomysł)

Zasugeruj nową funkcję

Czekamy na sugestie i opinie! Przekazuj je! Chętnie Cię wysłuchamy.

Witryna UserVoice dotycząca programu Excel

Zobacz też

Rozwiązania lub obejścia ostatnio stwierdzonych problemów w programie Excel dla komputerów Mac

Rozwijaj umiejętności związane z pakietem Office
Poznaj szkolenia
Uzyskuj nowe funkcje w pierwszej kolejności
Dołącz do niejawnych testerów pakietu Office

Czy te informacje były pomocne?

Dziękujemy za opinię!

Dziękujemy za opinię! Wygląda na to, że połączenie Cię z jednym z naszych agentów pomocy technicznej pakietu Office może być pomocne.

×