web-dev-qa-db-ja.com

ExcelテンプレートをロードしてPHPExcelで書き込む方法は?

PHPExcelを使用してExcelテンプレートをロードし、そのセルに書き込み、セルに画像を動的に挿入するにはどうすればよいですか?

8
user1894072

あなたはPHPExcelでこのようにあなたのExcelテンプレートを読むことができます:

$objPHPExcel = PHPExcel_IOFactory::load("./forms/english/cash.xlsx");

そして、あなたはこのようにセルに書くことができます:

  $objPHPExcel->setActiveSheetIndex(0)
                            ->setCellValue('A2', "No")
                            ->setCellValue('B2', "Name")
                            ->setCellValue('C2', "Email")
                            ->setCellValue('D2', "Phone")
                            ->setCellValue('E2', "Address");
15
Mehdi Jalal

例、githubサイトの30template.phpを参照してください

https://github.com/PHPOffice/PHPExcel/blob/develop/Examples/30template.php

テンプレートのロード:

$objReader = PHPExcel_IOFactory::createReader('Excel5');

$objPHPExcel = $objReader->load("templates/30template.xls");

例で書き込みを参照してください

$objPHPExcel->getActiveSheet()->setCellValue() 

画像を追加するには、PHPExcel_Worksheet_Drawingを使用します。

// Add an image to the worksheet
$objDrawing = new PHPExcel_Worksheet_Drawing();
$objDrawing->setName('My Image');
$objDrawing->setDescription('The Image that I am inserting');
$objDrawing->setPath('./images/myImage.png');
$objDrawing->setCoordinates('B2');
$objDrawing->setWorksheet($objPHPExcel->getActiveSheet());
7
Haim Evgi

これで、ロードテンプレートは必要ありません。 PHP Excel templator: https://github.com/alhimik1986/php-Excel-templator を使用してみてください

0
user3551026