Einzelnen Beitrag anzeigen

Benutzerbild von Chemiker
Chemiker

Registriert seit: 14. Aug 2005
1.858 Beiträge
 
Delphi 11 Alexandria
 
#1

Re: Excel richtig beenden aus Delphianwendung

  Alt 5. Mär 2008, 19:27
Hallo okoeller,

versuchst mal mit dieser Function:

Delphi-Quellcode:
{-------------------------------------------------------------------------------
Funktion:  EXCELOhneNachFragenSchliessen()
Bemerkung: Mit dieser Function wird das neu aktive WorkBook unter den unter
            DateiName angegeben Namen abgespeichert. Dabei wird die Rückfrage
            "Sollen Ihre Änderungen in <Datei> gespeichert werden?" erscheint
            immer, wenn eine Arbeitsmappe geschlossen wird, welche nicht
            gespeicherte Änderungen enthält unterdrückt. Die Datei wird immer
            abgespeichert, auch wenn diese keine Änderung enthält.
Parameter: m_Excel :Variant    // Ist die Excel-Apllication-Variable.
            WorkBobj:olevariant  // Ist die Aktuelle Workbook-Variable.
            DateiName: String    // Ist der komplette Path mit Laufwerk, Path
                                // und DateiName.
Functions-Wert: = TRUE  // alles Klar die Datei ist normal abgespeichert
                        // worden.
                = FALSE // Es ist beim Abspeichern ein Fehler aufgetreten.
Version:    1.01
letz.Ändr.: 12.05.2006
-------------------------------------------------------------------------------}

function EXCELOhneNachFragenSchliessen(m_Excel: Variant; WorkBobj: olevariant;
         const DateiName: String): Boolean;
begin
  Result:= FALSE;
  m_Excel.Application.DisplayAlerts := False; // Alle Rückfragen ausstellen
  try
    WorkBobj.saved := FALSE;
    WorkBobj.Close (saveChanges:=TRUE, FileName:=DateiName);
    Result:= TRUE; // Alles OK dann wird TRUE zurückgegeben.
  finally
    m_Excel.Application.DisplayAlerts := TRUE; // Alle Rückfragen anstellen
    m_Excel.Quit;
  end;
end;


Bis bald Chemiker
wer gesund ist hat 1000 wünsche wer krank ist nur einen.
  Mit Zitat antworten Zitat