Comment get le nom d'une cellule dans Excel dans java en utilisant POI?

J'essaie d'apprendre les POI et j'ai un exemple de code.

import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.hssf.util.CellReference; import org.apache.poi.ss.usermodel.CellValue; import org.apache.poi.ss.usermodel.FormulaEvaluator; import org.apache.poi.ss.usermodel.Row; public class ExpressionExample { public static void main(Ssortingng[] args) throws Exception { HSSFWorkbook workbook = new HSSFWorkbook(); HSSFSheet sheet = workbook.createSheet("Sample sheet"); Row row = sheet.createRow(0); FormulaEvaluator evaluator = workbook.getCreationHelper() .createFormulaEvaluator(); HSSFCell formulaCell = (HSSFCell) row.createCell(6); HSSFCell c1 = (HSSFCell) row.createCell(1); HSSFCell c2 = (HSSFCell) row.createCell(2); c1.setCellValue(5); c2.setCellValue(10); CellReference cr1 = new CellReference(0 , 1); Ssortingng line = "if(A1>A2, \"LAR\" , if(5>10, \"AB\" , \"CD\"))"; formulaCell.setCellFormula(line); CellValue cellValue = evaluator.evaluate(formulaCell); System.out.println(cellValue.getSsortingngValue()); } } 

maintenant, dans ma formule, j'ai appliqué les valeurs des cellules A1 et A2, mais je souhaite donner cette valeur en fonction de mon code et les cellules devraient être «C1 et c2». toute idée de faire cela?

Ce serait très utile.

Je ne suis pas sûr si j'ai bien saisi votre question correctement, mais voila …

Si vous désirez utiliser les valeurs auxquelles vous configurez dans les cellules c1 et c2 (dans ce cas '5' et '10') dans votre formule, vous pouvez créer 2 objects int pour contenir ces valeurs:

 int c1Value = 5; int c2Value = 10; 

Vous pouvez ensuite utiliser ces objects pour définir les valeurs de la cellule et les inclure dans votre formule:

 c1.setCellValue(c1Value); c2.setCellValue(c2Value); Ssortingng line = "if(" + c1Value + ">" + c2Value + ", \"LAR\" , if(5>10, \"AB\" , \"CD\"))"; 

Notez également que dans votre code c1 réfère à la cellule A2 dans Excel, et c2 fait reference à la cellule A3 . Les deux lignes et les colonnes commencent à 0 dans Apache.

Est-ce ce que vous essayez de faire?