AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

OLE Excel beenden

Ein Thema von Sidores · begonnen am 5. Nov 2003 · letzter Beitrag vom 6. Nov 2003
Antwort Antwort
Sidores

Registriert seit: 17. Sep 2003
Ort: Oldenburg
107 Beiträge
 
Delphi 7 Professional
 
#1

OLE Excel beenden

  Alt 5. Nov 2003, 11:51
Moin,
ich muss vorhandene Excel Tabbelle erweitern.
Ist ja eigentlich kein Problem, doch wie kann ich excel dann richtig schließen(ist immer noch in der Prozzese-Liste des TaskManagers)
Ich wollte das so machen:
Code:
Unit1.excel := CreateOleObject('Excel.Application');
 //Lade die Datei,fügen Daten hinzu,und speichere
Excel.Workbooks.close;
excel.Quit;
Wieso geht das nicht?

Danke
  Mit Zitat antworten Zitat
Benutzerbild von APP
APP

Registriert seit: 24. Feb 2003
Ort: Graz (A)
705 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: OLE Excel beenden

  Alt 5. Nov 2003, 12:38
Hallo Sidores,
das mit dem OLE-Excel ist eine eigene Wissenschaft, ich helfe mir dabei so:

Delphi-Quellcode:
  TRY
    WS.Disconnect; // Worksheet
    WBk.Disconnect; // Workbook
    ExcelApp.Quit; // Excel
    ExcelApp.Destroy;
  EXCEPT
    ...
  END
Armin P. Pressler

BEGIN
...real programmers are using C/C++ - smart developers Delphi;
END;
  Mit Zitat antworten Zitat
Sidores

Registriert seit: 17. Sep 2003
Ort: Oldenburg
107 Beiträge
 
Delphi 7 Professional
 
#3

Re: OLE Excel beenden

  Alt 5. Nov 2003, 12:53
Dann kommt folgende Fehlermeldung
---------------------------
Benachrichtigung über Debugger-Exception
---------------------------
Im Projekt Project1.exe ist eine Exception der Klasse EOleError aufgetreten. Meldung: 'Die Methode 'Destroy' wird vom Automatisierungsobjekt nicht unterstützt'. Prozeß wurde angehalten. Mit Einzelne Anweisung oder Start fortsetzen.
---------------------------
OK Hilfe
---------------------------
  Mit Zitat antworten Zitat
Benutzerbild von APP
APP

Registriert seit: 24. Feb 2003
Ort: Graz (A)
705 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: OLE Excel beenden

  Alt 5. Nov 2003, 14:46
Hallo Sidores,
ich benutze die Komponenten vom Reiter "Servers", dort gibt es dann die Methode Destroy.

p.s.
Mein Projekt ist schon ein Weilchen her, daher kann icch mich nur wage erinnern,
dass ich auf die Serverkompos gekommen bin, weil ich mit "CreateOleObject" ähnl.
Schwierigkeiten hatte wie Du.
Armin P. Pressler

BEGIN
...real programmers are using C/C++ - smart developers Delphi;
END;
  Mit Zitat antworten Zitat
neolithos

Registriert seit: 31. Jul 2003
Ort: Dresden
1.386 Beiträge
 
Delphi 7 Architect
 
#5

Re: OLE Excel beenden

  Alt 5. Nov 2003, 19:54
eigentlich fehlt oben nur ein

excel := Unassigned; Denke ich!
- ciao neo -
Es gibt niemals dumme Fragen, sondern nur dumme Antworten!
  Mit Zitat antworten Zitat
Niko

Registriert seit: 23. Jun 2003
416 Beiträge
 
Delphi 2006 Professional
 
#6

Re: OLE Excel beenden

  Alt 5. Nov 2003, 20:16
Die Zuweisung von Unassigned hat keinen Einfluss auf Excel, sondern kennzeichnet die Variable nur als unbelegt.
@Sidores: Eigentlich sollte deine Lösung funktionieren, aber probier mal Excel.Application.Close.
"Electricity is actually made up of extremely tiny particles called electrons, that you cannot see with the naked eye unless you have been drinking." (Dave Barry)
  Mit Zitat antworten Zitat
neolithos

Registriert seit: 31. Jul 2003
Ort: Dresden
1.386 Beiträge
 
Delphi 7 Architect
 
#7

Re: OLE Excel beenden

  Alt 5. Nov 2003, 20:20
Nicht nur das sondern es wird auch der ReferenzCounter des Schnittstellen-Objectes um eins gesenkt.

Was zur folge hat das Excel beendet werden kann!

So war es bei mir!
- ciao neo -
Es gibt niemals dumme Fragen, sondern nur dumme Antworten!
  Mit Zitat antworten Zitat
Sidores

Registriert seit: 17. Sep 2003
Ort: Oldenburg
107 Beiträge
 
Delphi 7 Professional
 
#8

Re: OLE Excel beenden

  Alt 6. Nov 2003, 07:56
@Niko Jetzt kommt auch ne Fehlermeldung, nur mit der Methode 'Close'
  Mit Zitat antworten Zitat
Sidores

Registriert seit: 17. Sep 2003
Ort: Oldenburg
107 Beiträge
 
Delphi 7 Professional
 
#9

Re: OLE Excel beenden

  Alt 6. Nov 2003, 08:00
Es geht:
Code:
Unit1.excel := CreateOleObject('Excel.Application');
 //Lade die Datei,fügen Daten hinzu,und speichere
Excel.Workbooks.close;
Excel.Application.Quit;
Hätte ich auch früher drauf kommen können.
Danke für die Antworten
  Mit Zitat antworten Zitat
Niko

Registriert seit: 23. Jun 2003
416 Beiträge
 
Delphi 2006 Professional
 
#10

Re: OLE Excel beenden

  Alt 6. Nov 2003, 18:36
Entschuldigung, mein Fehler. Ich wollte eigentlich auch Application.Quit schreiben .
"Electricity is actually made up of extremely tiny particles called electrons, that you cannot see with the naked eye unless you have been drinking." (Dave Barry)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:39 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz