# Zeilenumbruch - Excel Export HSSF



## Jvooy (2. Dez 2011)

Guten Morgen,

ich habe das Problem, dass ich mir nicht sicher bin, wie ein Zeilenumbruch bei einem Excel Export(HSSF) funktioniert. 

Wäre klasse, wenn mich jmd. weiterbringen könnte 

Bsp.:


```
cell.setCellValue(new HSSFRichTextString
	        		("Summe IT/Anwendung /** -->!!!ZEILENUMBRUCH HIER!!!<-- **/ (" + month + ")"));
	        cell.setCellStyle(style2);
	        cell = row.createCell((short) 4);
```


Danke.


----------



## SlaterB (2. Dez 2011)

kannst du das denn in Excel schaffen?
dann wäre vielleicht der Trick, eine entsprechende Excel-Zelle einzulesen und zu analysieren
(im Vergleich zu anderen)

ich schaffe gerade nur testweise generell Zeilenumbruch in Excel-Zelle einzuschalten,
das entspricht wrapText im HSSFCellStyle


----------



## faetzminator (2. Dez 2011)

Ich habs gerade im alten Excel 2003 ausprobiert, und mir gelingt es nicht, einen mehrzeiligen Text zu schreiben oder einzufügen. Bist du sicher, dass das in den neueren Versionen überhaupt funktioniert?


----------



## Jvooy (2. Dez 2011)

Hallo,

danke schonmal fürs Engagement.

Also mein Ausbilder meint es würde funktionieren irgendwie.

Helfen kann er im Moment nicht - viel zu tun  Daher meine Frage. Naja ansonsten muss das erstmal warten


----------



## c_sidi90 (2. Dez 2011)

mit \n schon probiert ? In c# geht das mit cell.Value = "ersteZeile \n ZweiteZeile";

Bin bei POI nicht sicher, aber da müsste es ja auch sowas wie wrapText = true geben, solltest du mal schauen und ausprobieren.


----------



## Jvooy (2. Dez 2011)

Ich werde wrapText = true mal testen.

/r/n geht nicht. alles schon probiert


----------



## XHelp (2. Dez 2011)

wrapText wird vermutlich einfach nur sagen, dass die Zeile umgebrochen werden sollte, wenn die nicht in die Zelle reinpasst.
Ich würde auch einfach mal mit \n oder sogar \r\n probieren.

P.S: */*r*/*n wird auch nicht gehen


----------



## Jvooy (2. Dez 2011)

ohje ^^ Es ist Freitag:autsch:... ja ich werds nochmal testen.

Danke !:toll:


----------



## Jvooy (2. Dez 2011)

Uploaded with ImageShack.us

ganz bin ich noch nicht im Ziel. Is eh bissle komisch der Code in dem Programm hier..

naja ich schau mal weiter wegen dem wrap text


----------



## c_sidi90 (2. Dez 2011)

So hab mir mal die Zeit genommen und ein kleines Programm geschrieben das dein Vorhaben erfüllt.


```
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.CellStyle;


public class ExcelTest {

	public static void main(String[]rgs) throws IOException{
		
		HSSFWorkbook wb          = new HSSFWorkbook();
		
		
		HSSFSheet sheet = wb.createSheet();
		HSSFRow row     = sheet.createRow(0);
		HSSFCell cell =  row.createCell(0);
		
		CellStyle cs = wb.createCellStyle();
	    cs.setWrapText(true);
	    cell.setCellStyle(cs);
		cell.setCellValue("Test\r\nHuhu");
		FileOutputStream fileOut = new FileOutputStream("C:/workbook.xls");
		wb.write(fileOut);
		fileOut.close();
		
	}
}
```
Mfg


----------



## Jvooy (2. Dez 2011)

Stylesettings:


```
// Style #2
	        HSSFCellStyle style2 = workbook.createCellStyle();
	        // Font
	        HSSFFont font2 = workbook.createFont();
	        font2.setFontHeightInPoints((short)14);
	        font2.setFontName("ITC Officina Sans Book");
	        font2.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
	        style2.setFont(font2);  
	        style2.setWrapText(true); /** Das hier war das Ausschlaggebene ! **/
	        style2.setBorderBottom(HSSFCellStyle.BORDER_THIN);
	        style2.setBottomBorderColor(HSSFColor.BLACK.index);
```

Zeilenumbruch:


```
cell = row.createCell((short) 2);
	        cell.setCellValue(new HSSFRichTextString
	        		("Gebühren IT\r\n(" + month + ")"));
	        cell.setCellStyle(style2);
```



Vielen Dank ! Klasse :toll:

Schönes Wochenende


----------

