Necesito generar un archivo .xls (Excel), usando la biblioteca Java Apache POI for spreadsheets.POI de Apache para Excel: configuración del tipo de celda para "texto" para una columna completa
El archivo contendrá una lista de números de teléfono en la columna A, formateados como "0221 ...." o "+49221 ..." - por lo que Excel los interpreta de forma predeterminada como celdas numéricas. Esto es malo, porque el 0 o el + se recortarán.
Para resolver el problema, puedo usar cell.setCellType(Cell.CELL_TYPE_STRING)
, que funciona bien, pero solo para las celdas específicas para las que configuré esto.
¿Cómo puedo aplicar esta configuración para toda la columna (es decir, incluso para todas las celdas restantes, donde el usuario ingresará números de teléfono adicionales)?
En Excel, esto es posible: Selección de toda la columna, y se aplica el tipo de célula (el ajuste sobrevive guardar/cargar el archivo.)
Pero no puedo encontrar el método correcto para el PDI.
- Primero asumí, debería ser algo así como
sheet.setDefaultCellType(int colNum)
. Pero no puedo encontrar nada como esto (probablemente estoy ciego? Hay muchos similar methods en la biblioteca para aplicar estilos de texto como "alinear centro", etc.) - Entonces pensé: Quizás solo se puede aplicar a un NamedRange o algo similar, pero no he logrado averiguar cómo funciona esto ...
¡Eso se ve bien! Tan pronto como regrese al proyecto, probaré esta solución. ¡Gracias! –
Esto funciona ... ¡Gracias! – jahroy
Hice lo mismo. var cllstyl = this.Workbook.CreateCellStyle(); var workbook = new HSSFWorkbook(); var currDataFormat = workbook.CreateDataFormat(); cllstyl.DataFormat = currDataFormat.GetFormat ("@"); sheet.SetDefaultColumnStyle (1, cllstyl); Pero no muestra el formato "Texto", sino que muestra "Fecha". Por favor ayúdame con esto. –