elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Los 10 CVE más críticos (peligrosos) de 2020


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  PHPexcel celda multilinea
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: PHPexcel celda multilinea  (Leído 5,913 veces)
OssoH


Desconectado Desconectado

Mensajes: 887


Ver Perfil
PHPexcel celda multilinea
« en: 7 Marzo 2014, 18:05 pm »

Estoy creando un excel desde php con la libreria phpexcel. El problema lo tengo cuando quiero poner mas de una linea (retorno de carro) dentro de una misma celda.


Si hago lo siguiente  funciona:

Código:

$campo = "Hello\nWord";
$objPHPExcel->getActiveSheet()->setCellValue($letra.$pos, "$campo");
  $objPHPExcel->getActiveSheet()->getStyle($letra.$pos)->getAlignment()->setWrapText(true);

En cambio si hago lo siguiente no funciona y en excel la celda me la pone por ejemplo de la siguiente forma :  prueba\nexcel\n desdephp

Código:
$campo = htmlspecialchars(str_replace('<br>','\n',$result[$i]['description']));
$objPHPExcel->getActiveSheet()->setCellValue($letra.$pos, "$campo");
  $objPHPExcel->getActiveSheet()->getStyle($letra.$pos)->getAlignment()->setWrapText(true);

Lo he probado de mil formas y nada :(
alguien se le ocurre que puede ser?
Gracias.



En línea

#!drvy
Moderador
***
Desconectado Desconectado

Mensajes: 5.815



Ver Perfil WWW
Re: PHPexcel celda multilinea
« Respuesta #1 en: 7 Marzo 2014, 22:10 pm »

El caracter \n es nueva linea y se parsea SOLO si va entre comillas dobles.

Código
  1. $campo = htmlspecialchars(str_replace('<br>',"\n",$result[$i]['description']));

Saludos


En línea

OssoH


Desconectado Desconectado

Mensajes: 887


Ver Perfil
Re: PHPexcel celda multilinea
« Respuesta #2 en: 10 Marzo 2014, 09:40 am »

Siii, funciona!! gracias.

Ahora el "unico" problema que tengo es que cuando se abre en excel me pone 'intros' principio. Estoy viendo como arreglarlo.


Ya lo he arreglado. Faltaba alinearlo verticalmente.
$objPHPExcel->getActiveSheet()->getStyle($letra.$pos)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_TOP);

« Última modificación: 10 Marzo 2014, 09:51 am por OssoH » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines