Reputation: 77
Is it possible to set number format of cell by Open Office API?
I am exporting some data into OpenOffice calc and I want to use a user defined format.
Below is an example of my code:
try
AOpenOffice := GetActiveOleObject('com.sun.star.ServiceManager');
except
on E: Exception do
begin
AOpenOffice := CreateOleObject('com.sun.star.ServiceManager');
end;
end;
AStarDesktop := AOpenOffice.createInstance('com.sun.star.frame.Desktop');
AFileProp := varArrayCreate([0, -1], varVariant);
AMyDoc := AStarDesktop.LoadComponentFromURL('private:factory/scalc', '_blank', 0, AFileProp);
AAllSheets := AMyDoc.Sheets;
AMySheet := AAllSheets.getByIndex(0);
for AColumn := 0 to 9 do begin
for ARow := 1 to 10 do begin
ARange := Chr(ord('A') + AColumn) + IntToStr(ARow);
AMyCell := AMySheet.getCellRangeByName(ARange);
AValue := (AColumn + 1) * ARow * 1000;
AMyCell.setFormula(AValue);
// ? TODO set number format
end;
end;
Thank you for any idea.
Upvotes: 2
Views: 766
Reputation: 1
Try this: ActivateSheetByIndex(1).getCellByPosition(col - 1, row - 1).NumberFormat := 36; {Date}
Upvotes: 0