Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.04.2024 18:57:33
17.04.2024 16:56:58
Anzeige
Archiv - Navigation
972to976
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
972to976
972to976
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Excel fernsteuern

Excel fernsteuern
30.04.2008 11:42:00
gröbi
Hallo,
ich arbeite in einem Cobol-Programm, das in eine Applikation namens Reflection eingebettet ist. In Reflection ist VBA integriert. Aus Reflection heraus öffne ich mit VBA Excel und exportiere Daten in ein Excel-Woorkbook.
Der Export funktioniert aber nur für einen Datensatz.
Jedesmal, wenn ich einen Datensatz nach Excel exportiere, wird eine neue Instanz von Excel geöffnet. Dies kann ich im Task-Manager nachvollziehen. Wie kann ich das verhindern?
Ich habe einen Verweis auf Excel eingebunden.
Hier der Code:
Dim xlApp As Object
Set xlApp = CreateObject("Excel.Application")
Dim wbNewRow As Long
xlApp.Workbooks.Open "\\Roko\xfer\buch\Kreditlimits.xls"
wbNewRow = Sheets("Limits").Cells(Rows.Count, 1).End(xlUp).Row + 1
Sheets("Limits").Cells(wbNewRow, 1).Value = Me.tbKunde.Value
Sheets("Limits").Cells(wbNewRow, 2).Value = Me.tbBelegart.Value
Sheets("Limits").Cells(wbNewRow, 3).Value = Me.tbBelegnummer.Value
Sheets("Limits").Cells(wbNewRow, 4).Value = Me.tbBetrag.Value
Sheets("Limits").Cells(wbNewRow, 5).Value = Me.tbStatus.Value
Sheets("Limits").Cells(wbNewRow, 6).Value = Me.tbDatum.Value
Sheets("Limits").Cells(wbNewRow, 7).Value = Me.tbNotiz.Value
ActiveWorkbook.Close True
xlApp.Quit
Set xlApp = Nothing
Wenn mehr als eine Instanz von Excel geöffnet ist funzt der Datenexport nicht mehr.
Danke für Hinweise.
Gruß, gröbi

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Excel fernsteuern
30.04.2008 12:23:00
Renee
Hi Gröbi,
Der Export funktioniert aber nur für einen Datensatz.
Warum ? Ist den auf dem Reflection-Schirm nur immer einer verfügbar ? oder ist der Code falsch geschrieben ?
Jedesmal, wenn ich einen Datensatz nach Excel exportiere, wird eine neue Instanz von Excel geöffnet.
Das ist aus deinem Code ersichtlich: CreateObject("Excel.Application"), eigentlich müsste dir das bei deinem Level auch ohne Taskmanager klar sein!
Wie kann ich das verhindern?
Indem du dir im Code merkst, ob du schon einmal eine Excel-Instanz und das entsprechende Workbook dazu geöffnet hast, und dann auf dieses zugreifst.
GreetZ Renée

Anzeige
AW: Excel fernsteuern
30.04.2008 12:34:00
gröbi
Hallo,
ich habe in meiner Prozedur am Ende stehen:
xlApp.Quit
Set xlApp = Nothing
Damit wird doch Excel beendet, oder nicht?

Ja (owT)
30.04.2008 13:36:00
Renee

AW: Ja (owT)
30.04.2008 13:44:33
gröbi
Ich lese die Daten nun interimsmäßig in eine Textdatei mit Delimiter ";" ein.
Dort kann ich Sie zum Auslesen für eine andere Anwendung speichern, basta!
Gruß, gröbi.

AW: Sensationell (owT)
30.04.2008 14:02:58
Renee

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige