AGB  ·  Datenschutz  ·  Impressum  







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

Fehler bei OLE Zugriff auf Excel

Ein Thema von Cyberbob_at_tot · begonnen am 6. Dez 2006 · letzter Beitrag vom 6. Dez 2006
Antwort Antwort
Cyberbob_at_tot

Registriert seit: 30. Apr 2003
Ort: Ahlen
270 Beiträge
 
Delphi 2006 Professional
 
#1

Fehler bei OLE Zugriff auf Excel

  Alt 6. Dez 2006, 14:58
Hallo zusammen,
ich habe viel im Internet nach einer Guten Lösung, um auf Excel zuzugreifen. Also im Hintergrund ein DB Query in Excel zu exportieren. Ich bin dann hierbei gelandet. Nutze Delphi 2006.

Delphi-Quellcode:
  i:=1;
  //Prüfen ob eine Aktive Instanz vorhanden ist
  try
    ExcelApp := GetActiveOleObject('Excel.Application');
  except
    try
      //Wenn nicht eine neue erstellen
      ExcelApp := CreateOleObject('Excel.Application');
    except
      //Bei Fehler exit
      ShowMessage('Excel - Modul kann nicht gestartet werden!');
      Exit;
    end;
  end;
  //Öffnen der Exceldatei
  ExcelApp.Workbooks.Open('c:\test.xls');
  //Ende der Datei ermitteln
  repeat
    i:=i+1;
  until ExcelApp.Cells[i, 1].Value='';
  //die Daten anhängen
  ORowCount:=i;
  ExcelApp.Cells[ORowCount, 2].value:='1';
  ExcelApp.Cells[ORowCount, 3].Value:='Test';
  // Workbook Speichern, Schließen und aus dem Speicher entfernen
  ExcelApp.ActiveWorkBook.Save;
  ExcelApp.ActiveWorkBook.Close;
  ExcelApp.Quit;
  ExcelApp := Unassigned;
Das Beste ist, das er die 2 Testdaten in Excel schreibt. Finde ich schonmal sehr gut aber leider bekomme ich eine Exception der Klasse EoleSysError "Vorgang nicht verfügbar.". Wenn ich dann das Programm anhanlte hält Delphi bei "ExcelApp := GetActiveOleObject('Excel.Application');".

Könnt ihr mir erklären, wieso es dazu kommt, die Daten aber trotzdem geschrieben werden?

MFG

Christian Dannenberg
-----------------------------------------------------------
The only winning move is not to play ! (Wargames)
-----------------------------------------------------------
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: Fehler bei OLE Zugriff auf Excel

  Alt 6. Dez 2006, 15:02
Schon mal die Kommentare im Code angeschaut und überlegt was try...exept macht?
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Cyberbob_at_tot

Registriert seit: 30. Apr 2003
Ort: Ahlen
270 Beiträge
 
Delphi 2006 Professional
 
#3

Re: Fehler bei OLE Zugriff auf Excel

  Alt 6. Dez 2006, 15:04
Ja schon klar, wenn keine Instants da ist soll er eine neue machen, mir aber die Exception nicht ausgaben.
Habe nun die Überprüfung auf eine vorhanden Instanz weggelassen und schon gehts wunderbar.
-----------------------------------------------------------
The only winning move is not to play ! (Wargames)
-----------------------------------------------------------
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#4

Re: Fehler bei OLE Zugriff auf Excel

  Alt 6. Dez 2006, 15:32
Zitat von Cyberbob_at_tot:
Ja schon klar, wenn keine Instants da ist soll er eine neue machen, mir aber die Exception nicht ausgaben.
Habe nun die Überprüfung auf eine vorhanden Instanz weggelassen und schon gehts wunderbar.
Die Exception wird doch nur in deiner Entwicklungsumgebung (=Delphi IDE) angezeigt!
Du hast den Programmcode durch das Weglassen verschlechtert.
Lies mal:
http://www.delphipraxis.net/internal...ach+exceptions
und beachte den Absatz zu "Sprach-Exceptions".
Andreas
  Mit Zitat antworten Zitat
Cyberbob_at_tot

Registriert seit: 30. Apr 2003
Ort: Ahlen
270 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Fehler bei OLE Zugriff auf Excel

  Alt 6. Dez 2006, 15:46
OK danke werds wieder hinzufügen!
-----------------------------------------------------------
The only winning move is not to play ! (Wargames)
-----------------------------------------------------------
  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 09:07 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