Zitat von
ThoPos:
Zitat von
globetrotter77:
b) ..., aber auf keinen Fall aus Delphi wieder Excel aufrufen ... das ist vergleichbar damit, sich am eigenen Schopf aus dem Sumpf zu ziehen.
Hallo Globetrotter,
das verstehe ich nicht. Wenn ich aus Excel heraus mein Programm starte und per GetOLEObjekt die Steuerung von Excel übernehme und anschließend Excel wieder freigebe, so ist doch alles in Ordnung? Ich kann doch auch, wenn ich mit dem Auto unterwegs bin, einen ortskundigen Passanten für mich durch die Stadt fahren lassen, und anschließend wieder selber weiterfahren; nur das anschließend der Passant an einem anderen Ort ist. So wie meine Excel-Mappe geändert ist.
Gruß
Thomas
Das sagt sich so leicht, und es kann auch gut sein, dass ich selber einfach ein paar Sachen falsch mache damit, aber irgendwie hatte ich mit solchen Konstrukten bisher IMMER meine Schwierigkeiten.
Sogar dann, wenn ich in einer etwas längeren Schleife neue Excel-Dateien erstellen wollte, konnte es (musste aber nicht!?) passieren, dass beim Aufruf einer neuen Instanz von Excel (durch einen anderen Benutzer ... meist den ungeduldigen Anwender) irgendjemand oder irgendetwas durcheinander kam. Meistens waren das die üblichen Verdächtigen aus Redmond, die sich ausnahmsweise selber aufhängten.
Die schöne neue Welt, in der jeder mit jedem Auto rumgurken kann, erweist sich meiner Meinung nach nur allzu oft als ne einzige Schlittenfahrt auf ner riesigen Eisfläche.
In deinem Fall würde ich vermutlich eher die Methode des Staffellaufs bevorzugen, wenn es sich nicht ohnehin als sinnvoll erweist, alles in Excel abzuhandeln. (nun ja ... sinnvoll ist vielleicht der falsche Ausdruck bei Excel)
Also Kommando an Delphi komplett übergeben, sobald alle Add-Ins abgearbeitet sind,
und die restlichen Formatierungsarbeiten sowie Ausdruck etc. von Delphi erledigen lassen. Dann beißen sie sich zumindest nicht gegenseitig.