1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
|
POIFSFileSystem fs = new POIFSFileSystem(new FileInputStream("c:\\TableauDeBord2.xls"));
HSSFWorkbook wb = new HSSFWorkbook(fs);
HSSFSheet s = wb.getSheetAt(0);
HSSFRow r = null;
HSSFCell c = null;
short rownum = 0;
for (rownum = (short) 9; rownum < 11; rownum++)
{
r = s.getRow(rownum);
// Les styles sont bien conservés, mais les formules pas appliqués !!!
c = r.getCell((short) 1); c.setCellValue(20);
c = r.getCell((short) 2); c.setCellValue(53);
c = r.getCell((short) 3); c.setCellValue((double) 1068);
c = r.getCell((short) 4); c.setCellValue("Suisse");
c = r.getCell((short) 5); c.setCellValue(51);
c = r.getCell((short) 6); c.setCellValue(1024);
//Si on fait ça, les formules sont bien appliquées (uniquement avec createCell ??)
//Mais du coup, c'est fastidieux, et il faut revoir le formatage de la valeur (%,...)
//c = r.createCell((short) 7); c.setCellType(HSSFCell.CELL_TYPE_FORMULA);
//c.setCellFormula("G10/$I$3*$K$3/D10");
c = r.getCell((short) 8); c.setCellValue(85);
c = r.getCell((short) 9); c.setCellValue(924);
c = r.getCell((short) 11); c.setCellValue(913);
c = r.getCell((short) 12); c.setCellValue(75);
c = r.getCell((short) 13); c.setCellValue(1192);
}
// Imposssible d'enlever une ligne ==> Height=0
s.getRow((short) 12).setHeight((short) 0);
s.getRow((short) 13).setHeight((short) 1);
// Write the output to a file
FileOutputStream fileOut = new FileOutputStream("c:\\test_TDB.xls");
wb.write(fileOut);
fileOut.close(); |
Partager