phpspreadsheet - phpexcel centrar texto
Establecer el ancho de la celda de la hoja de cálculo usando PHPExcel (7)
El método setAutoSize debe venir antes de setWidth:
$objPHPExcel->getActiveSheet()->getColumnDimensionByColumn(''C'')->setAutoSize(false);
$objPHPExcel->getActiveSheet()->getColumnDimensionByColumn(''C'')->setWidth(''10'');
Estoy tratando de establecer el ancho de una celda en un documento de Excel generado con PHPExcel con:
$objPHPExcel->getActiveSheet()->getColumnDimensionByColumn(''C'')->setWidth(''10'');
$objPHPExcel->getActiveSheet()->getColumnDimensionByColumn(''C'')->setAutoSize(false);
pero eso no funciona.
¿Cuál es el método que debo llamar aquí?
Es una diferencia sutil, pero esto funciona bien para mí:
$objPHPExcel->getActiveSheet()->getColumnDimension(''A'')->setWidth(10);
Tenga en cuenta la diferencia entre getColumnDimensionByColumn
y getColumnDimension
Además, ni siquiera estoy configurando AutoSize y funciona bien.
Esto funcionó para mí:
$objPHPExcel->getActiveSheet()->getColumnDimension(''C'')->setAutoSize(false);
$objPHPExcel->getActiveSheet()->getColumnDimension(''C'')->setWidth(10);
asegúrese de agregar setAuzoSize(false)
, antes de setWidth();
como Rolland mencionó
La forma correcta de establecer el ancho de la columna es mediante el uso de la línea publicada por Jahmic; sin embargo, es importante tener en cuenta que, además, debe aplicar el estilo después de agregar los datos, y no antes, de lo contrario, en algunas configuraciones, el ancho de la columna no aplicado
Tha es porque getColumnDimensionByColumn recibe el índice de la columna (un entero que comienza desde 0), no una cadena.
Lo mismo ocurre con setCellValueByColumnAndRow
autoSize para el ancho de la columna configurado como abajo. Esto funciona para mi.
$spreadsheet->getActiveSheet()->getColumnDimension(''A'')->setAutoSize(true);
hola, tengo el mismo problema ... agregue 0.71 al valor de ancho de celda de Excel y dé ese valor al
$objPHPExcel->getActiveSheet()->getColumnDimension(''A'')->setWidth(10);
por ejemplo: A Ancho de columna = 3.71 (valor de excel)
dar ancho a la columna = 4.42
dará el archivo de salida con el mismo ancho de celda.
$objPHPExcel->getActiveSheet()->getColumnDimension(''A'')->setWidth(4.42);
espero que esto ayude