Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Excel - Änderungen im OLEContainer speichern (https://www.delphipraxis.net/76868-excel-aenderungen-im-olecontainer-speichern.html)

FAS 11. Sep 2006 13:16


Excel - Änderungen im OLEContainer speichern
 
Hallo

ich habe mir einen OLEContainer in einem Formular eingebaut. Das Laden des Excelfiles klappt, es werden auch fast alle Menüs und Buttens von Excel im Hauptfenster meiner Anwendung angezeigt und das geforderte Dokument wird geöffnet. Das Problem ist jedoch die Änderungen im Excel wieder zu speichern.

Delphi-Quellcode:
 
Type
  ....
  OleContainerExcel: TOleContainer;
  ....

procedure TFrmExcel.OpenDocument(Filename: TFileName);
begin
  OleContainerExcel.CreateObjectFromFile(Filename, False);
  OleContainerExcel.DoVerb(ovShow);
end;
Hierzu fehlt aus Excel dann sowohl das Menü Datei/Speichern als auch der entsprechende Schalter mit dem Diskettensymbol.
Ich bitte um Hilfe.

Gruß Andreas

uwewo 5. Okt 2006 07:09

Re: Excel - Änderungen im OLEContainer speichern
 
Keine Ahnung ob es schon zu spät ist!

Hier die Lösung die ich für Word verwende, sollte aber auch in Excel funktionieren.

Erstelle einen Menüpunkt in Deiner Anwendung "Speichern unter"

Delphi-Quellcode:
 if SaveDialog.Execute then
     OleContainer.OLEObject.SaveAs(SaveDialog.FileName);

FAS 6. Okt 2006 07:36

Re: Excel - Änderungen im OLEContainer speichern
 
Hallo,

danke! Habs zwar unter dessen etwas anders gelöst, läuft aber wohl letztlich auf dasselbe hinaus.
Delphi-Quellcode:
OleContainerExcel.SaveAsDocument(SaveDialogXLS.FileName);
Offen ist jetzt nur noch das Drucken. Leider kennt das OLEObject keine Methode Print.

Gruß Andreas.

uwewo 6. Okt 2006 14:08

Re: Excel - Änderungen im OLEContainer speichern
 
Das habe ich zu diesem Thema gefunden

Delphi-Quellcode:
  OleContainer.OLEObject.Application.Dialogs[xlDialogPrint].Show;
  OleContainer.OLEObject.Application.Dialogs[xlDialogPrintPreview].Show
habe es allerdings nicht getestet.

Wäre nett wenn Du bescheid geben könntest ob es funktioniert.

FAS 10. Okt 2006 14:53

Re: Excel - Änderungen im OLEContainer speichern
 
Danke! :-) Funktioniert.

Gruß Andreas.


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:36 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz