Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Saltar a siguiente columna PhpExcel

Estas en el tema de Saltar a siguiente columna PhpExcel en el foro de PHP en Foros del Web. Que tal amigos del foro, espero me puedan ayudar a resolver un problema que tengo: estoy usando las librerías de phpexcel y necesito pintar unos ...
  #1 (permalink)  
Antiguo 08/07/2013, 13:09
 
Fecha de Ingreso: marzo-2012
Mensajes: 84
Antigüedad: 12 años, 8 meses
Puntos: 3
Saltar a siguiente columna PhpExcel

Que tal amigos del foro, espero me puedan ayudar a resolver un problema que tengo:
estoy usando las librerías de phpexcel y necesito pintar unos datos a partir de una consulta, hasta ahí todo va bien.
Código PHP:
$result mysql_query("SELECT MATRICULA,AP_PATERNO,AP_MATERNO,NOMBRE,EMAIL FROM ml_dat_ALUMNO WHERE ID_GRUPO='".$nombre_gpo."' ORDER BY AP_PATERNO ASC ");
            
    
$rowNumber 2;
    while (
$row mysql_fetch_row($result)) {
       
$col 'A';
       foreach(
$row as $cell) {
          
$objPHPExcel->getActiveSheet()->setCellValue($col.$rowNumber,$cell);
          
$col++;
       }
       
$rowNumber++;
    } 
Ej:
A ---- B
1 -- PABLO
2 -- RAÚL
3 -- LAURA
4 -- ERNESTO
5 -- JUAN
6 -- MARÍA


Pero quisiera saber cómo puedo hacer para que llegando a un determinado número de filas o registros se salte a la siguiente columna, por ejemplo llegando a 3.

Ej:
A ----- B --------- C
1 -- PABLO -- ERNESTO
2 -- RAÚL -- JUAN
3 -- LAURA -- MARÍA

De antemano muchas gracias
  #2 (permalink)  
Antiguo 08/07/2013, 13:16
Avatar de By_George  
Fecha de Ingreso: abril-2009
Ubicación: localhost
Mensajes: 629
Antigüedad: 15 años, 7 meses
Puntos: 19
Respuesta: Saltar a siguiente columna PhpExcel

Puedes controlarlo con la variable $rowNumber, es la que va determinando el numero de la fila asi que cuando llegue a determinado numero cambie el valor de la columna a la siguiente letra.
__________________
La estadística es una ciencia que demuestra que si mi vecino tiene dos coches y yo ninguno, los dos tenemos uno.
  #3 (permalink)  
Antiguo 08/07/2013, 13:24
 
Fecha de Ingreso: marzo-2012
Mensajes: 84
Antigüedad: 12 años, 8 meses
Puntos: 3
Respuesta: Saltar a siguiente columna PhpExcel

Muchas gracias por tu respuesta By_George, sin embargo el $rowNumber indica la posición en donde los registros iniciaran a pintarse, por ejemplo indico que el valor de $rowNumber=2 porque la primera fila la uso para poner el nombre de las columnas o ¿crees que podrías darme un ejemplo?

Te agradezco mucho
  #4 (permalink)  
Antiguo 08/07/2013, 14:34
Avatar de By_George  
Fecha de Ingreso: abril-2009
Ubicación: localhost
Mensajes: 629
Antigüedad: 15 años, 7 meses
Puntos: 19
Respuesta: Saltar a siguiente columna PhpExcel

Si pero ese es en el inicio antes del while pero despues al final del foreach lo incrementa, se me ocurre algo asi:

Código PHP:
$result mysql_query("SELECT MATRICULA,AP_PATERNO,AP_MATERNO,NOMBRE,EMAIL FROM ml_dat_ALUMNO WHERE ID_GRUPO='".$nombre_gpo."' ORDER BY AP_PATERNO ASC "); 
             
    
$rowNumber 2;
    
$col 'A';
    while (
$row mysql_fetch_row($result)) { 
       if(
$rowNumber==5)//aqui evaluar que si llega a la fila cinco que se inicie de nuevo el valor de $rowNumber y dar valor a $col
       
{
             
$rowNumber 2;
       }

       foreach(
$row as $cell) { 
          
$objPHPExcel->getActiveSheet()->setCellValue($col.$rowNumber,$cell); 
          
$col++; 
       } 
       
$rowNumber++; //Aqui es donde te digo que se incrementa el valor de la variable que controla la fila, que se usa en el for each
    

__________________
La estadística es una ciencia que demuestra que si mi vecino tiene dos coches y yo ninguno, los dos tenemos uno.

Última edición por By_George; 08/07/2013 a las 14:41 Razón: por que no me habia dado cuenta que la columna ya se incrementaba
  #5 (permalink)  
Antiguo 08/07/2013, 16:53
 
Fecha de Ingreso: marzo-2012
Mensajes: 84
Antigüedad: 12 años, 8 meses
Puntos: 3
Respuesta: Saltar a siguiente columna PhpExcel

Una vez más gracias By_George, casi está listo, sólo que los datos aparecen en escalera:

Ej:
A -- B -- C -- D -- E -- F -- G -- H -- I
1 -- -- -- -- - 1 -- -- -- - -- 1 --- -- -- -
-- -- 1 -- - -- -- -- 1 - -- -- -- -- 1 -- --
-- -- -- -- 1 -- -- -- -- - 1 -- - -- -- -- 1
-- -- -- -- - -- -- -- -- - -- -- - -- - - -- -
-- -- -- -- - -- -- -- -- - -- -- - -- -- -- -
-- -- -- -- - -- -- -- -- - -- -- - -- -- -- -

He intentado varias cosas pero aún no me sale bien, ¿alguna idea?

Gracias por tu ayuda.
  #6 (permalink)  
Antiguo 08/07/2013, 17:04
 
Fecha de Ingreso: marzo-2012
Mensajes: 84
Antigüedad: 12 años, 8 meses
Puntos: 3
Respuesta: Saltar a siguiente columna PhpExcel

Muchas gracias By_George, por tu gran ayuda pude resolver mi problema, les dejo el código con una mínima modificación:

Código PHP:
$result_2 mysql_query("SELECT MATRICULA,AP_PATERNO,AP_MATERNO,NOMBRE,EMAIL FROM ml_dat_ALUMNO WHERE ID_GRUPO='".$nombre_gpo."' ORDER BY AP_PATERNO ASC "); 
$count2=mysql_num_rows($result_2);

$rowNumber2 2;
    
$col2 'F';
    while (
$row2 mysql_fetch_row($result_2)) { 
       if(
$rowNumber2==$count_alum+2)
       {
             
$rowNumber2 2;
             
$col2++; 
       }

       foreach(
$row2 as $cell2) { 
          
$objPHPExcel->getActiveSheet()->setCellValue($col2.$rowNumber2,$cell2); 
          
//$col2++; 
       
}
        
$rowNumber2++;
    } 

Etiquetas: mysql, phpexcel
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:14.