Java POI : Comment lire la valeur d'une cellule Excel et non la formule qui la calcule ?
Java POI : Comment lire la valeur d'une cellule Excel et non la formule qui la calcule ?
Comment obtenir la valeur calculée d'une cellule (et non la formule) avec Apache POI en Java ?
Re: Java POI : Comment lire la valeur d'une cellule Excel et non la formule qui la calcule ?
Utilisez `FormulaEvaluator` :
```java
FormulaEvaluator evaluator = workbook.getCreationHelper().createFormulaEvaluator();
CellValue cellValue = evaluator.evaluate(cell);
switch (cellValue.getCellType()) {
case NUMERIC:
double val = cellValue.getNumberValue();
break;
case STRING:
String str = cellValue.getStringValue();
break;
}
```
Ou utilisez `DataFormatter` pour obtenir la valeur formatée sous forme de chaîne :
```java
DataFormatter formatter = new DataFormatter();
String val = formatter.formatCellValue(cell, evaluator);
```
```java
FormulaEvaluator evaluator = workbook.getCreationHelper().createFormulaEvaluator();
CellValue cellValue = evaluator.evaluate(cell);
switch (cellValue.getCellType()) {
case NUMERIC:
double val = cellValue.getNumberValue();
break;
case STRING:
String str = cellValue.getStringValue();
break;
}
```
Ou utilisez `DataFormatter` pour obtenir la valeur formatée sous forme de chaîne :
```java
DataFormatter formatter = new DataFormatter();
String val = formatter.formatCellValue(cell, evaluator);
```