Estoy usando Apache POI API
para generar excel spreadsheet
para generar algunos datos.Apache POI Excel: cómo configurar columnas para expandir?
El problema al que me enfrento es cuando se crea y abre la hoja de cálculo, las columnas no se expanden, por lo que algunos textos largos como el texto con formato de fecha no se muestran a primera vista.
Podría simplemente hacer doble clic en el borde de la columna en excel para expandir o arrastrar el borde para ajustar el ancho de la columna, pero podría haber más de 20 columnas y no hay manera de hacerlo manualmente cada vez que abra la hoja de cálculo: (
descubrí (aunque podría ser un método equivocado) groupRow()
y setColumnGroupCollapsed()
podría ser capaz de hacer el truco, pero sin suerte. Tal vez lo estoy usando en el camino equivocado.
fragmento de código de ejemplo
Workbook wb = new HSSFWorkbook();
CreationHelper createHelper = wb.getCreationHelper();
//create sheet
Sheet sheet = wb.createSheet("masatoSheet");
//not really working yet.... :(
//set group for expand/collapse
//sheet.groupRow(0, 10); //just random fromRow toRow argument values...
//sheet.setColumnGroupCollapsed(0, true);
//create row
Row row = sheet.createRow((short)0);
//put a cell in the row and store long text data
row.createCell(0).setCellValue("Loooooooong text not to show up first");
Cuando se crea esta hoja de cálculo, la cadena "Looooooong text to to the first" está en la celda pero como la columna no está expandida, solo aparece "Loooooooo".
¿Cómo puedo configurarlo para que cuando abra mi hoja de cálculo, la columna ya esté expandida?
http://stackoverflow.com/questions/20190317/apache-poi-excel-big- auto-column-width – gavenkoa
Parece que está buscando una forma de usar POI para lograr esto. Pero para hacerlo simplemente en Excel, seleccione la hoja completa y haga doble clic en el límite del encabezado de la columna A-B. Si necesita hacer esto en varias hojas, una solución codificada puede servirle mejor. – avg