Грешка "Променливата използва тип за автоматизиране, който не се поддържа" в редактора на Visual Basic в Excel for Mac

Последна актуализация: 10 ноември 2017 г.

ПРОБЛЕМ

През октомври 2017 г. в Excel for Mac е въведен нов редактор на Visual Basic. С новия редактор на Visual Basic има проблем със създаването на декларации за обекти чрез избиране от падащото меню в горния край на прозореца за кода.

Ако щракнете върху падащото меню отляво и изберете елемент от списъка, би трябвало да получите код за избраното събитие в падащия списък отдясно. Можете да изберете още елементи от падащия списък отдясно, за да създадете допълнителен код за работа с избраното събитие.

VBE редакторът с показан падащ списък за избор на обект

Вместо това възниква грешка, че кодът не е създаден.

Грешка на редактора на Microsoft Visual Basic: Променливата използва тип за автоматизиране, който не се поддържа във Visual Basic.

СЪСТОЯНИЕ: ЗАОБИКОЛНО РЕШЕНИЕ

Изберете едно от следните заобиколни решения за този проблем:

ЗАОБИКОЛНО РЕШЕНИЕ № 1

Можете да изпълните подобна стъпка на компютър с Excel за Windows и след това да копирате кода в Excel for Mac.

ЗАОБИКОЛНО РЕШЕНИЕ № 2

Можете да отидете в MSDN и да намерите синтаксиса за събитието, което искате да използвате, след което да въведете кода ръчно във вашия VBA проект. Тази статия описва събитията "работна книга" в Microsoft Excel – Събития "Работна книга".

ЗАОБИКОЛНО РЕШЕНИЕ № 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

Експерти по икони (мозък, скорости)

Попитайте експертите

Свържете се с експерти, дискутирайте последните новини, актуализации и най-добри практики за Excel и прочетете нашия блог.

Техническа общност за Excel

Общност за икони

Получаване на помощ в общността

Задайте въпрос и намерете решения от агенти по поддръжката, най-ценни специалисти, инженери и други потребители на Excel.

Форум за Excel в Answers

Искане на функция за икона (електрическа крушка, идея)

Предлагане на нова функция

Обичаме да четем вашите предложения и обратната връзка! Споделете какво мислите. Слушаме ви.

UserVoice за Excel

Вж. също

Корекции или заобиколни решения за най-новите проблеми в Excel for Mac

Разширете уменията си в Office
Преглед на обучението
Получавайте първи новите функции
Присъединете се към участниците в Office Insider

Беше ли полезна тази информация?

Благодарим ви за обратната връзка!

Благодарим ви за вашата обратна връзка. Изглежда, че ще бъде полезно да ви свържем с един от нашите агенти по поддръжката на Office.

×