Personal tools
You are here: Home Forum Nice Office Access (NOA) Calc-Spreadsheet formatieren

 • Calc-Spreadsheet formatieren

Replies: 0   Views: 80
Up one level

 • Calc-Spreadsheet formatieren

Posted by JSteinhilber at 2010-02-25 15:54:28
Damit das Rad nicht zweimal erfunden wird...
Vielleicht kann's ja jemand gebraucht.
Nachfolgendes Snipet stellt Schriftgröße und Farbe einer Spalte ein. Weiterhin wird eine Spalte verbreitert und das Zahlenformat eingestellt.

IDocumentService documentService = officeApplication.getDocumentService();
IDocument document = documentService.constructNewDocument(IDocument.CALC, DocumentDescriptor.DEFAULT);
ISpreadsheetDocument spreadsheetDocument = (ISpreadsheetDocument) document;

XSpreadsheets spreadsheets = spreadsheetDocument.getSpreadsheetDocument().getSheets();
String sheetName= "Tabelle1";
XSpreadsheet spreadsheet1 = (XSpreadsheet)UnoRuntime.queryInterface(XSpreadsheet.class,spreadsheets.getByName(sheetName));
//ZeilenSpalten-Auswahl
XCellRange xCellRange = spreadsheet1.getCellRangeByPosition( 0, 0, 5, 0 );
//erst Zeilen
com.sun.star.table.XColumnRowRange xColRowRange = ( com.sun.star.table.XColumnRowRange )
UnoRuntime.queryInterface( com.sun.star.table.XColumnRowRange.class, xCellRange );

com.sun.star.table.XTableRows xRows = xColRowRange.getRows();
com.sun.star.beans.XPropertySet xRPropSet = null;
//1.Zeile
Object aRowObj = xRows.getByIndex(0);
xRPropSet = (com.sun.star.beans.XPropertySet)
UnoRuntime.queryInterface(com.sun.star.beans.XPropertySet.class, aRowObj);

xRPropSet = (com.sun.star.beans.XPropertySet)
UnoRuntime.queryInterface(com.sun.star.beans.XPropertySet.class, aRowObj);
//Größere Schrift, mittig und rot
xRPropSet.setPropertyValue("CharHeight", new Float(13.));
xRPropSet.setPropertyValue("HoriJustify", new Integer(2));
xRPropSet.setPropertyValue( "CharColor", new Integer( 0xff0000 ) );

com.sun.star.beans.XPropertySet xPropSet = null;
//Jetzt die Spalten
com.sun.star.table.XTableColumns xColumns = xColRowRange.getColumns();
//Spalte 2 breiter
Object aColumnObj = xColumns.getByIndex(1);
xPropSet = (com.sun.star.beans.XPropertySet)
UnoRuntime.queryInterface(com.sun.star.beans.XPropertySet.class, aColumnObj);
xPropSet.setPropertyValue("Width", new Integer(10000));

//Spalte 3 Zahlenformat mit , als Dezimaltrenner
aColumnObj = xColumns.getByIndex(2);
xPropSet = (com.sun.star.beans.XPropertySet)
UnoRuntime.queryInterface(com.sun.star.beans.XPropertySet.class, aColumnObj);
xPropSet.setPropertyValue("NumberFormat", new Integer(2));
JSteinhilber Member
Posts: 80

Powered by Plone, the Open Source Content Management System

This site conforms to the following standards: