Code Snippet "VBA allgemein"
Prüfen, ob Excel geöffnet ist, bevor es aus anderer Applikation (z.B. Access) aufgerufen wird
'Verwendet GetObject oder CreateObject abhängig davon, ob Excel schon geöffnet ist
Private Function funStartExcel() As Excel.Application
On Error GoTo ErrTrap:
'kein "As Excel.Application": Angabe des Typs führt zu Automatisierungsfehler!!!
Dim objAppExcel
Set objAppExcel = GetObject(, "Excel.Application") ' benutzt geöffnete Version von Excel
Set funStartExcel = objAppExcel
Exit Function
'-----------------------------------------------
ErrTrap:
If Err = 429 Then
Set objAppExcel = CreateObject("Excel.Application") 'startet eine neue Kopie von Excel
Set funStartExcel = objAppExcel
Else
MsgBox "Fehler: " & Err.Number & " " & Err.Description & vbCrLf & "Excel lässt sich nicht öffnen", vbCritical
End If
End Function