Autor Thema: Beenden von Excel per LS  (Gelesen 1686 mal)

Offline alex0178

  • Frischling
  • *
  • Beiträge: 30
Beenden von Excel per LS
« am: 24.08.07 - 09:52:56 »
Hallo,

ich habe eine DB erstellt, in welcher ein Agent läuft, der zeitgesteuert
per ODBC zu einer DB2-DB connected, selects ausführt und das Ergebnis
in Exceltabellen schreibt, diese als Dateianhang an das Notesdocument
hängt und an die jeweiligen Empfänger verteilt.

Leider habe ich ein Problem mit dem automatischen Beenden von Excel.
Ich habe es mit folgendem Code probiert:

excelAppObject.quit
set excelworksheetobject = nothing
set excelappobject = nothing

Excel wird auch geschlossen, allerdings läuft der Prozess von Excel auf dem Rechner weiter.
Hat jemand eine Idee, wie ich diesen Prozess auch noch beende?

alex0178

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.885
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re: Beenden von Excel per LS
« Antwort #1 am: 24.08.07 - 10:12:13 »
falsche Reihenfolge:
Du musst zuerst alle Objekte, die auf Excel- Verweisen mit nothing belegen, und DANN das excelAppObject mit quit schliessen.
Bei mir funktioniert das einwandfrei...

Tode
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

Offline alex0178

  • Frischling
  • *
  • Beiträge: 30
Re: Beenden von Excel per LS
« Antwort #2 am: 24.08.07 - 10:40:13 »
Hallo Tode,

geht leider nicht "object variable not set".
Ist aber doch eigentlich auch logisch. Ich kann die Variable ja schlecht, nachdem ich sie geleert habe, wieder verändern.

Ich habe ehrlich keine Ahnung, woran es noch liegen könnte.
Hast Du noch ne idee?

alex0178

botschi

  • Gast
Re: Beenden von Excel per LS
« Antwort #3 am: 24.08.07 - 11:17:25 »
Ich mach es so:

Call xlApp.Quit()
Set xlApp = Nothing

Machst Du vielleicht 2x Excel auf und schliesst es nur einmal? Oder war der Prozess vorher auch schon da?

Matthias

Offline alex0178

  • Frischling
  • *
  • Beiträge: 30
Re: Beenden von Excel per LS
« Antwort #4 am: 24.08.07 - 11:39:41 »
Hallo Matthias,

taste mich so langsam vor.

Der "Quit" funktioniert so lange ist in derselben Prozedur bleibe. Ich habe bestimmte Routinen jedoch in einer separaten Funktion (eigentlich 2) ausgelagert in welche ich das excelworksheetobject übergebe.

Weißt Du, was ich verändern kann, damit es funktioniert?

alex0178

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.885
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re: Beenden von Excel per LS
« Antwort #5 am: 24.08.07 - 11:45:32 »
mache das excelworksheetobject und alle Excel- Variablen Global verfügbar, damit ist es nur einmal vorhanden, eventuell wird da was bei der Übergabe "verdoppelt".

HTH
Tode
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz