CalcAutomation/de

From Lazarus wiki
Revision as of 14:34, 3 October 2012 by Olaf (talk | contribs) (Created page with "{{CalcAutomation}} __TOC__ <br> =Calc= <br> =Aufbau einer Steuerung für die Anwendung Calc= <br> ==Beispiel unter Verwendung eines neuen Sheets== <syntaxhighlight> ... var ...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

Deutsch (de)


Calc


Aufbau einer Steuerung für die Anwendung Calc


Beispiel unter Verwendung eines neuen Sheets

  ...
var
  // Reservieren des Speichers
  varCLApp: OleVariant;
  varDesktop: OleVariant;
  varSheets: OleVariant;
  varSheet1: OleVariant;
  varDokument: OleVariant;
  varLoadParams: OleVariant;

begin
  // Erstellt das OleObjekt und erstellt den Zeiger darauf
  varCLApp := CreateOleObject('com.sun.star.ServiceManager');

  // Erstellt den Zeiger auf den Officedesktop
  varDesktop := varCLApp.createInstance('com.sun.star.frame.Desktop');
  // Erstellt ein leeres Array das für die Dokumentenerstellung benötigt wird
  varLoadParams := VarArrayCreate([0, -1], varVariant);
  // Erstellt ein neues (leeres) Dokument (Workbook) und den Zeiger darauf
  varDokument := varDesktop.LoadComponentFromURL('private:factory/scalc','_blank',0, varLoadParams);
  // Erstellt den Zeiger auf die Sheets
  varSheets := varDokument.getSheets();
  // Erstellt den Zeiger auf ein einzelnes Sheet
  varSheet1 := varSheets.getByIndex(0);

  // Schreibt in einen Bereich einen Wert 
  //Achtung: der Begriff Bereich wird hier nur für eine einzelne Zelle verwendet 
  varSheet1.getCellRangeByName('A1').setString('Txt 1');
  // schreibt in eine Zelle einen Wert
  varSheet1.getCellByPosition(2,4).setString('Txt 2');

  // Speichern des Dokumentes unter einem neuen Namen
  varDokument.storeAsURL('file:///D:/test.ods', varLoadParams);
  varDokument.close(True);
  varDesktop.terminate; //Beendet die Anwendung

  // Freigabe des Speichers
  varCLApp := UnAssigned;
  varDesktop := UnAssigned;
  varSheets := UnAssigned;
  varSheet1 := UnAssigned;
  varDokument := UnAssigned;
  varLoadParams := UnAssigned;
end;



--Olaf 12:34, 3 October 2012 (UTC)