so klappt bei mir das speichern der neuen daten:
Delphi-Quellcode:
// nervige Meldungen ausschalten:
Excel.DisplayAlerts := FALSE;
WBobj.saved := false;
WBobj.Close (saveChanges:=TRUE, FileName:=DateiName);
Excel.Quit;
das ist aber nicht die beste lösung.
scheinbar liegt es an den parametern von wobj.close(...).
kenne das problem, das bei unterschiedlichen version von word / excel da gern mal unterschiedliche parameter angegeben werden mussten, selbst wenn es nur eine "emptyParam" mehr war.
und noch etwas:
wenn du das
ole object erstellst, könnte man auch noch prüfen ob excel bereits läuft und dann auf diese instanz zugreifen.
Delphi-Quellcode:
//Create Excel-OLE Object
try
XLApp := GetActiveOleObject('
Excel.Application');
// laden wenn excel offen
except
XLApp := CreateOleObject('
Excel.Application');
// oder Excel starten
end;