tutorial read poi exportar example desde create java excel apache-poi xls

read - exportar a excel xlsx desde java



Cómo cambiar el color de fuente de una celda particular apache poi 3.9 (1)

Actualmente estás creando algunas de tus celdas dos veces, por lo que todo va mal.

En primer lugar, le sugiero que mueva la creación del estilo de celda para acercar la parte superior de su código. Recuerde: los estilos de celdas están incluidos en un libro de trabajo, ¡así que no cree uno por celda!

CellStyle style = wb.createCellStyle(); Font font = wb.createFont(); font.setColor(HSSFColor.HSSFColorPredefined.BLACK.getIndex()); style.setFont(font); // Set more colours on the style as needed // Set formatting rules on the style as needed

Ahora, dependiendo de su preferencia, haga la creación de su celda de esta manera:

Cell cell; cell = rowxl.createCell(0); cell.setCellValue("ABC"); cell.setCellStyle(style); cell = rowxl.createCell(1); cell.setCellValue("aaa"); cell.setCellStyle(style);

O así:

rowxl.createCell(1).setCellValue("ABC"); rowxl.createCell(2).setCellValue("aaa"); rowx1.getCell(1).setCellStyle(style); rowx1.getCell(2).setCellStyle(style);

¡No hagas ese extraño híbrido que tienes en este momento, ya que terminas creando celdas dos veces y te pierdes el estilo!

Puedo cambiar el color de primer plano con el siguiente código en apache POI. Ahora quiero cambiar el color de fuente de una sola celda.

CellStyle style = wb.createCellStyle(); style.setFillForegroundColor(IndexedColors.GREEN.getIndex()); style.setFillPattern(CellStyle.SOLID_FOREGROUND); cell = rowxl.createCell((short) 7); cell.setCellValue(" <<<<ONTRACK>>>>"); cell.setCellStyle(style); rowxl.createCell(0).setCellValue(TEAM);

He intentado esto pero no cambia el color de las dos primeras columnas

código:

public class fclr { public static void main(String[] args) throws Exception { InputStream inp = new FileInputStream("c:/workbook1.xls"); Workbook wb = WorkbookFactory.create(inp); CreationHelper createHelper = wb.getCreationHelper(); Sheet sheet = wb.getSheetAt(0); Row rowxl = sheet.createRow((short)0); Cell cell = rowxl.createCell(0); //apply some colors from the standard palette, // as in the previous examples. //we''ll use red text on a lime background CellStyle style = wb.createCellStyle(); rowxl.createCell(1).setCellValue("ABC"); rowxl.createCell(2).setCellValue("aaa"); Font font = wb.createFont(); font.setColor(HSSFColor.BLACK.index); style.setFont(font); cell.setCellStyle(style); FileOutputStream fileOut = new FileOutputStream("c:/workbook1.xls"); wb.write(fileOut); fileOut.close(); } }