2009-10-23 8 views
33

Ich muss einen Wert in einer Excel-Zelle anzeigen, die wie ein Prozentsatz formatiert ist, z. wie 12.3%.Prozentwerte in Excel mit POI-API anzeigen

Standardmäßig wird der Wert als Text angezeigt, aber ich muss ihn als Zahl anzeigen.

Was ist die geeignete Methode, um dies zu erreichen?

+1

@ax, dies ist eine POI-Frage, es ist also eine Frage, wie POI den Zellentyp als Prozentsatz festlegen kann. – Yishai

Antwort

62

Sie müssen:

  1. Ihre Daten werden mit der Nummer (floating-point), nicht als Text.
  2. Geben Sie das Zellenformat als Prozentsatz an.

Etwas wie:

cell.setCellValue(0.123); // set value as number 
CellStyle style = workbook.createCellStyle(); 
style.setDataFormat(workbook.createDataFormat().getFormat("0.000%")); 
cell.setCellStyle(style); 

Werfen Sie einen Blick, um weitere Informationen zu user defined formats section von POI Kurzanleitung. Sie können auch die examples durchsuchen, die zeigt, wie Sie verschiedene POI-Funktionen verwenden können.

+1

Schön, das funktioniert perfekt. – Israelm

+0

Das Endergebnis im Excel zeigt nicht% an, es wird nur 0,123 als Wert angezeigt. – KingKari