Einzelnen Beitrag anzeigen

Detlev

Registriert seit: 16. Nov 2014
Ort: Hamburg
46 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#1

Excel paste mutiple cellls from clipboard

  Alt 21. Apr 2023, 16:48
Delphi-Quellcode:
Excel := CreateOleObject('Excel.Application');
Excel.Workbooks.Add;
Excel.Cells[1,1].Paste; // ERROR 1
Excel.SaveAs(APath + AFilename + '.xlsx'); // ERROR 2
Excel.Workbook.Close;
Excel.Quit;
ERROR 1:
In der Zwischenablage befindet sich ein Text mit etlichen Tab-separierten Zellen und CR-separierten Zeilen. Manuell kann ich die Zelle A1 anclicken und Bearbeiten-Einfügen (Ctrl-V) machen und Excel fügt alles perfekt ein.

Wie lautet der passende Befehl, um dies per OLE zu machen?

ERROR 2:
Wie speichert man das aktuelle Workbook unter einem neuen Namen ab? "SaveAs" wäre naheliegend gewesen, geht aber leider nicht.

(beide Male die Fehlermeldung: 'Die Methode 'XXX' wird vom Automatisierungsobjekt nicht unterstützt'.)

Ich möchte nacheinander eine Vielzahl von Excel-Dateien automatisiert erzeugen. Dazu neue Workbook erzeugen, Daten von Delphi aus kopieren und abspeichern, dann schließen.

Bonusfrage: Kann man einfach feststellen, ob Excel schon vor Beginn offen ist und man dann das Quit sich spart, weil der Nutzer es vielleicht noch weiter offen haben will?

Danke im voraus!
Detlev
  Mit Zitat antworten Zitat