| Bei Microsoft Excel sieht der Quelltext etwas anders aus:
Dim xclApp As Excel.Application Dim boolAppLoad As Boolean
Dim xclWbk As Excel.Workbook Dim boolWbkLoad As Boolean
Dim xclSht As Excel.Worksheet Dim strFile As String
On Error Resume Next
Err.Clear
strFile = "C:\My Files\zeit.xls"
Set xclApp = GetObject(, "Excel.Application")
If (Err.Number <> 0) Then
Err.Clear
boolAppLoad = True
Set xclApp = CreateObject("Excel.Application")
Else
boolAppLoad = False
End If
Set xclWbk = xclApp.Workbooks.Item(strFile)
If (Err.Number <> 0) Then
Err.Clear
boolWbkLoad = True
Set xclWbk = xclApp.Workbooks.Open(strFile, _
, , , , , , , , , , , False)
Else
boolWbkLoad = False
End If
Set xclSht = xclWbk.Worksheets(1)
[...]
Set xclSht = Nothing
If (boolWbkLoad) Then
xclWbk.Close xlSaveChanges End If
Set xclWbk = Nothing
If (boolAppLoad) Then
xclApp.Quit
End If
Set xclApp = Nothing Listing 3: Excel-Dokumente benutzen Excel ist recht geschwätzig und verlangt oft, daß Aktionen vom Benutzer bestätigt werden. Um diese Meldungen zu unterdrücken, gibt es die Eigenschaft DisplayAlerts. xclApp.DisplayAlerts = False Listing 4: Meldungen abschalten Die Geschwindigkeit der Verarbeitung eines Excel-Sheets kann man steigern, indem man auf das Verarbeiten der Excel-Ereignisse verzichtet. Dazu setzt man die Eigenschaft EnableEvents entsprechend. xclApp.EnableEvents = False Listing 5: Ereignisse abschalten Um Excel-Arbeitsmappen zu schließen, ohne sie zu speichern und ohne eine Meldung zu erhalten, kann man folgenden Weg gehen: xclWbk.Saved = True
xclWbk.Close SaveChanges:=False Listing 6: Excel-Arbeitsmappe schließen ohne zu speichern |