Excel POI API ändern Zelle Wert

Ich lese eine excel-Datei und füllen Sie einige Zellen mit POI-API für JAVA. Das Schreibe ich die ganze Arbeitsmappe in eine andere. Das ist tatsächlich Arbeit.

Das problem ist, dass dann (sobald die Zellen gefüllt sind) habe ich, die Datei zu öffnen und klicken Sie auf und geben Sie in die Zellen die ich modifiziert habe, um zu aktualisieren, die Werte der anderen Formel die Zellen.

Der code ist so:

cellHorasPrevistas.setCellValue("01:00:00")

Wenn ich in der xls-Datei scheint es sich um ein raw-String, statt dem Format "[h]:mm:ss", das war das ursprüngliche format der Zelle.

Habe ich versucht zu umschreiben, das format manuell, aber es hat nicht funktioniert:

    HSSFCellStyle cs = wb.createCellStyle();
    HSSFDataFormat df = wb.createDataFormat();
    cs.setDataFormat(df.getFormat("[h]:mm:ss"));
    cellHorasPrevistas.setCellStyle(cs);
    cellHorasPrevistas.setCellValue("01:00:00")

Habe ich auch schon versucht ohne Glück

HSSFFormulaEvaluator fe = new HSSFFormulaEvaluator(wb); 
fe.clearAllCachedResultValues()
fe.notifyUpdateCell(cellHorasPrevistas)
fe.evaluate(cellHorasPrevistas)

Ich muss ganz einfach zu ändern der Wert in einer Zelle eine bekommen, dass die Zelle die gleiche, wenn ich es manuell geändert in der xls.

Vielen Dank im Voraus,
Raúl

Fand eine teilweise Erklärung....Das problem ist, dass de CellType ändert sich von Zahl zu String und damit kann excel nicht verwenden, es in Formeln. Ich möchte mantain die Zahlenformat-Einstellung den Wert "12:00:00" und nicht 0,5. Ist es möglich?

  • Ich aktualisiert meine Antwort mit den Ergebnissen aus einigen tests, die ich gemacht
InformationsquelleAutor raulgomis | 2012-03-15
Schreibe einen Kommentar