Fehler beim Drucken

Luda

Erfahrenes Mitglied
Hallo Leute, wenn ich aus VB in Excel drucke passiert folgendes.
Beim ersten klick auf den Button Drucken wird fehlerfrei gedruckt, beim 2. Klick bekomme ich die fehlermeldung :
Die methode 'Range' für das Objekt' _Global ist fehlgeschlagen.
Kann mir jemand weiterhelfen
Beende ich Excel nicht richtig

Danke



Private Sub Command1_Click()
'----------------------Aufruf von Excel-----------------------------------------------
Dim excelApp As Object ' zuweisung eines excelobjekts
Set excelApp = CreateObject("excel.application") ' start von excel
excelApp.Workbooks.Open ReadOnly:=True, _
FileName:=App.Path & "\tabelle.xls"

excelApp.Visible = True 'sichtbar machen false = unsichtbar für anwender

'----------------------in excel Felder schreiben----------------------------------
With excelApp.Workbooks(1).Sheets(1)
Range("a1").Select
ActiveCell.FormulaR1C1 = "" & DateSerial(Year(Now), Month(Now), Day(Now))
End With
'---- ausdruck und beenden von excel ----
excelApp.Application.ActiveWindow.SelectedSheets.PrintOut
excelApp.Application.DisplayAlerts = False ' ohne Nachfrage schließen
excelApp.Application.Quit ' excel schließen
Set excelApp = Nothing

End Sub
 
Habe deinen Code nur etwas umgestellt und schon funktioniert es.

Option Explicit
Private excelApp As Object 'Deklaration im allgemeinen Teil


Private Sub Command1_Click()
excelApp.Workbooks.Open ReadOnly:=True, _
FileName:=App.Path & "\tabelle.xls"

excelApp.Visible = True
With excelApp.Workbooks(1).Sheets(1)
Range("a1").Select
ActiveCell.FormulaR1C1 = "" & DateSerial(Year(Now), Month(Now), Day(Now))
End With
excelApp.Application.ActiveWindow.SelectedSheets.PrintOut
excelApp.Application.DisplayAlerts = False
excelApp.Application.Quit
End Sub

Private Sub Form_Load()
Set excelApp = CreateObject("excel.application") 'Als Excel-Objekt initialisieren
End Sub


Private Sub Form_Unload(Cancel As Integer)
Set excelApp = Nothing 'Objekt beim Beenden aus dem Speicher entfernen
End Sub
 
Zurück