//Establecer propiedades $objPHPExcel->getProperties()->setCreator("Aymer Ivan Obando")->setLastModifiedBy("Hanseld A. Escallon Ortiz")->setTitle("Reporte por Cliente y Consultoría")->setSubject("Reporte por Cliente y Consultoría")->setDescription("Reporte por Cliente y Consultoría")->setKeywords("Excel Office 2007 openxml php")->setCategory("Reporte"); //Variables del reporte HORAS CONSULTOR $columnas = array(0 => "A", 1 => "B", 2 => "C", 3 => "D", 4 => "E"); $fila1 = 1; $fila10 = 10; // Agregar Informacion $objPHPExcel->setActiveSheetIndex(0); $objActSheet = $objPHPExcel->getActiveSheet(); $objActSheet->setTitle($fecha_inicial . ' hasta ' . $fecha_final); //Estilo y titulo del reporte UtilExcelPHP::mergeCeldas($objActSheet, $columnas[0] . $fila1, $columnas[3] . '4'); $objActSheet->setCellValue($columnas[0] . $fila1, "REPORTE POR CLIENTE - CONSULTORIA \rDESDE " . $fecha_inicial . ' HASTA ' . $fecha_final); UtilExcelPHP::estiloCelda($objActSheet, $columnas[0], $fila1, true, 'Arial', 15, '003366'); //Logo de la empresa UtilExcelPHP::mergeCeldas($objActSheet, 'E1', 'G4'); UtilExcelPHP::ponerLogo($objActSheet, 'E1'); //Titulos o Encabezados de Columna $objActSheet->setCellValue($columnas[0] . $fila10, 'Codigo Consultor'); $objActSheet->setCellValue($columnas[1] . $fila10, 'Consultor'); $objActSheet->setCellValue($columnas[2] . $fila10, 'Fase'); $objActSheet->setCellValue($columnas[3] . $fila10, 'No. Horas'); $objActSheet->setCellValue($columnas[4] . $fila10, 'Vr. Actividad'); //Fondo a los encabezados y color de letra foreach ($columnas as $value) { UtilExcelPHP::fondoCelda($objActSheet, $value, $fila10, '003366'); UtilExcelPHP::estiloCelda($objActSheet, $value, $fila10, true, 'Verdana', 10, 'FFFFFF'); } $i = 0; $filaData = 11; $numRegistros = count($lista);
$celdaFinMerge = $columnas[0] . ($filaData - 1); $celdaFinTotalMerge = $columnas[6] . ($filaData - 1); //echo $celdaIniMerge . ':' . $celdaFinMerge; UtilExcelPHP::mergeCeldas($objActSheet, $celdaIniMerge, $celdaFinMerge); UtilExcelPHP::mergeCeldas($objActSheet, $celdaTotalIniMerge, $celdaFinTotalMerge); //UtilExcelPHP::fondoCelda2($objActSheet, $celdaTotalIniMerge, '003366'); $idAnterior = $value['id']; $celdaIniMerge = $columnas[0] . $filaData; $celdaTotalIniMerge = $columnas[6] . $filaData; } else { if ($numRegistros == $i) { $celdaFinMerge = $columnas[0] . $filaData; $celdaFinTotalMerge = $columnas[6] . $filaData; //echo $celdaIniMerge . ':' . $celdaFinMerge; UtilExcelPHP::mergeCeldas($objActSheet, $celdaIniMerge, $celdaFinMerge); UtilExcelPHP::mergeCeldas($objActSheet, $celdaTotalIniMerge, $celdaFinTotalMerge); //UtilExcelPHP::fondoCelda2($objActSheet, $celdaTotalIniMerge, '003366'); } } //echo $celdaIniMerge; } //Establecer la anchura foreach (range('A', 'G') as $columnID) { $objPHPExcel->getActiveSheet()->getColumnDimension($columnID)->setAutoSize(true); //$col->setAutoSize(true); //$objActSheet->getColumnDimension('B')->setAutoSize(true); } //Renombrar Hoja //Establecer la hoja activa, para que cuando se abra el documento se muestre primero. $objPHPExcel->setActiveSheetIndex(0); //Se modifican los encabezados del HTTP para indicar que se envia un archivo de Excel.