Vorschlag
Statt eingebundenen Verweisen lieber Late Binding verwenden.
Zur Vermeidung von
- Programmierfehler
Beschreibung
Man kann Objekte auch erst zur Laufzeit in Access einbinden. Dies ist besonders bei Verwendung von ActiveX-Elementen zu bevorzugen.
Mit Verweis auf Excel-Object-Library Early Binding:
Dim xlApp As Excel.Application
Set xlApp = New Excel.Application
Mittels Late Binding:
Dim xlApp As Object
Set xlApp = CreateObject("Excel.Application")
Mittels Konstante für die bedingte Kompilierung kann während der Entwicklungphase Early Binding genutzt werden. Vor der Weitergabe der Anwendung ist nur noch die Compiler-Konstante zu ändern, um auf Late Binding umzustellen.
#Const ExcelEarlyBinding = 1 ' kann auch als Argument für bedingte Kompilierung ' in den VBA-Projekteigenschaften gespeichert werden
Sub BeispielD09b()
#If ExcelEarlyBinding Then Dim xlApp As Excel.Application #Else Dim xlApp As Object #End If
Set xlApp = CreateObject("Excel.Application") '… Set xlApp = Nothing
End Sub