2013-04-16 4 views
1

J'utilise la bibliothèque phpexcel pour exporter mon rapport vers un fichier Excel. mais je veux avoir mon propre fichier Excel et l'utiliser avec phpexcel. est ici le code i utilisé:en utilisant phpexcel dans codeigniter

public function event_reportexcel($id) 
{ 
    $this->load->library('excel'); 
    $this->excel->setActiveSheetIndex(0); 
    $this->excel->getActiveSheet()->setTitle('test worksheet'); 
    $this->excel->getActiveSheet()->setCellValue('A1', 'This is just some text value'); 
    $this->excel->getActiveSheet()->getStyle('A1')->getFont()->setSize(20); 
    $this->excel->getActiveSheet()->getStyle('A1')->getFont()->setBold(true); 
    $this->excel->getActiveSheet()->mergeCells('A1:D1'); 
    $this->excel->getActiveSheet()->getStyle('A1')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER); 

    $filename='just_some_random_name.xls'; //save our workbook as this file name 
    header('Content-Type: application/vnd.ms-excel'); //mime type 
    header('Content-Disposition: attachment;filename="'.$filename.'"'); //tell browser what's the file name 
    header('Cache-Control: max-age=0'); //no cache 


    $objWriter = PHPExcel_IOFactory::createWriter($this->excel, 'Excel5'); 
    //force user to download the Excel file without writing it to server's HD 
    $objWriter->save('php://output'); 
} 

il va mettre mes données dans un nouveau fichier Excel, mais j'ai besoin de cette fonction pour utiliser un fichier Excel en tant que modèle.

+0

duplication possible de [Comment ouvrir un fichier Excel avec PHPExcel pour lire et écrire?] (Http://stackoverflow.com/questions/8797103/how-to-open-an-excel-file-with-phpexcel -pour la fois lecture et écriture) –

Répondre

3

Vous pouvez ouvrir le fichier et le modifier comme vous avez besoin puis enregistrez-le

$fileType = 'Excel5'; 
$fileName = 'testFile.xls'; 

// Read the file 
$objReader = PHPExcel_IOFactory::createReader($fileType); 
$objPHPExcel = $objReader->load($fileName); 

// Change the file 
$objPHPExcel->setActiveSheetIndex(0) 
      ->setCellValue('A1', 'Hello') 
      ->setCellValue('B1', 'World!'); 

// Write the file 
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, $fileType); 
$objWriter->save($fileName); 

Vous pouvez voir ce post pour plus de détails.

+0

cela fonctionne ... merci –

+0

J'ai utilisé ce code ainsi que tous les autres exemples que je peux trouver sur google pour ouvrir un fichier de modèle qui contient un graphique dans Excel 2010. Je changé le type de fichier à Excel2007 et ajouté setIncludeCharts (TRUE) à la fois le lecteur et l'écrivain. Dans tous les exemples, j'ai essayé le spreadhseet est laissé corrompu et je supprime l'objet graphique lorsque j'essaie de l'ouvrir. – PrestonDocks

Questions connexes