11 Voto

PHPExcel: Ceros a la Izquierda

Pregunta de WebHorn | 10/01/2024 a las 14:12

Utilizo la biblioteca PHPExcel para crear y ofrecer un archivo de Excel creado con PHP para descargar.

Funciona bastante bien, pero me gustaría escribir los meses del 01 al 12 en mi tabla. Aunque paso los valores "01", "02", y así sucesivamente, solo aparecen "1" y "2" en las celdas correspondientes al abrir el archivo en Excel sin ningún cero delante.

¿Qué puedo hacer para que Excel muestre esos ceros iniciales?

ResponderPositivoNegativo
2Mejor Respuesta2 Votos

Cuando Excel detecta un "01" dentro de una celda, Excel interpreta este contenido como un número y solo muestra el número entero 1 en lugar de la cadena "01".

Para cambiar este comportamiento, generalmente hay dos posibilidades: la primera manera es formatear la celda ya no como un número sino como una cadena. Puede hacerlo de la siguiente manera:

$php->getActiveSheet()
    ->setCellValueExplicit('A1', 
                           '01', 
                           PHPExcel_Cell_DataType::TYPE_STRING);

Si es importante para usted que Excel procese el número como un número, también puede cambiar el formato numérico de la celda correspondiente. En el siguiente ejemplo, primero configuramos la celda A1 en 1, luego ajustamos su formato:

$php->getActiveSheet()->setCellValue('A1', 1);
$php->getActiveSheet()->getStyle('A1')
                      ->getNumberFormat()
                      ->setFormatCode('00');

En su caso, debe especificar "00". Si los números son más largos o si desea que se muestren más ceros, debe pasar "000", "0000" o, en consecuencia, solo el número de dígitos deseado.
10/01/2024 a las 19:36

ResponderPositivo Negativo
Responder

Temas Relacionados

Aviso Importante

Por favor tenga en cuenta: Las contribuciones publicadas en askingbox.com son contribuciones de los usuarios y no deben reemplazar el asesoramiento profesional. No son verificados por independientes y no reflejan necesariamente la opinión de askingbox.com. Aprende más.

Participar

Haga su propia pregunta o escriba su propio artículo en askingbox.com. He aquí cómo.