Ahmed Martens
2013-03-30 08:02:52 UTC
Hallo Leute,
in einem VB6-Modul verwende ich folgenden Code zum Instanzieren einer
offenen Excel-Instanz. Diese funktioniert aber nicht richtig:
<Code Auszug>
Dim xlObj As Excel.Application, objActiveWkb As Excel.Workbook,
objXLSheet As Excel.Worksheet
On Error Resume Next
'Verweis auf offenen Excel
Set xlObj = GetObject(, "Excel.Application")
'Wenn kein Excel, dann neu öffnen
If xlObj Is Nothing Then
Set xlObj = CreateObject("Excel.Application")
With xlObj
.Application.Visible = False
Set objActiveWkb = .Workbooks.Add
Set objXLSheet = objActiveWkb.Sheets(1)
End With
Else
With xlObj
'.Application.Visible = False
Set objActiveWkb = .ActiveWorkbook
Set objXLSheet = objActiveWkb.Sheets.Add
End With
End If
On Error GoTo Excel_Export_Error
<Ende Code Auszug>
Folgender Fehler tritt auf:
1. Ist bereits eine Instanz geöffnet, wird diese nicht gefunden, sondern
mein Code öffnet *immer* eine eigene neue Instanz.
2. Ist diese einmal geöffnet worden, wird diese jetzt immer wieder
richtig als geöffnet instanziert und es wird jetzt jedesmal in die
geöffnete Tabelle ein neues Sheet eingefügt.
Hat einer eine Idee woran es liegen kann?
Ich verwende diesen Code in einem VB6-Programm.
Kann mir einer vielleicht helfen?
Vielen Dank im voraus.
Gruß Ahmed
in einem VB6-Modul verwende ich folgenden Code zum Instanzieren einer
offenen Excel-Instanz. Diese funktioniert aber nicht richtig:
<Code Auszug>
Dim xlObj As Excel.Application, objActiveWkb As Excel.Workbook,
objXLSheet As Excel.Worksheet
On Error Resume Next
'Verweis auf offenen Excel
Set xlObj = GetObject(, "Excel.Application")
'Wenn kein Excel, dann neu öffnen
If xlObj Is Nothing Then
Set xlObj = CreateObject("Excel.Application")
With xlObj
.Application.Visible = False
Set objActiveWkb = .Workbooks.Add
Set objXLSheet = objActiveWkb.Sheets(1)
End With
Else
With xlObj
'.Application.Visible = False
Set objActiveWkb = .ActiveWorkbook
Set objXLSheet = objActiveWkb.Sheets.Add
End With
End If
On Error GoTo Excel_Export_Error
<Ende Code Auszug>
Folgender Fehler tritt auf:
1. Ist bereits eine Instanz geöffnet, wird diese nicht gefunden, sondern
mein Code öffnet *immer* eine eigene neue Instanz.
2. Ist diese einmal geöffnet worden, wird diese jetzt immer wieder
richtig als geöffnet instanziert und es wird jetzt jedesmal in die
geöffnete Tabelle ein neues Sheet eingefügt.
Hat einer eine Idee woran es liegen kann?
Ich verwende diesen Code in einem VB6-Programm.
Kann mir einer vielleicht helfen?
Vielen Dank im voraus.
Gruß Ahmed
--
Antworten bitte nur in der Newsgroup
Windows 7 64bit Home Premium
Office Prof. 2010
Antworten bitte nur in der Newsgroup
Windows 7 64bit Home Premium
Office Prof. 2010