我在使用PHPExcel时遇到了一些麻烦,
事实上,我已经阅读了我发现的所有教程,但它对我不起作用。
我已将此代码放在页面上:
$i = -1; // index des enregistrements
$objPHPExcel->setActiveSheetIndex(0);
$sheet->getColumnDimension('A')->setWidth(75);
$sheet->getColumnDimension('B')->setWidth(150);
$sheet->getColumnDimension('C')->setWidth(190);
$sheet->getColumnDimension('D')->setWidth(150);
$sheet->getColumnDimension('E')->setWidth(115);
$sheet->getColumnDimension('F')->setWidth(115);
$sheet->getColumnDimension('G')->setWidth(380);
$sheet->getColumnDimension('H')->setWidth(75);
$objPHPExcel->getActiveSheet()->SetCellValue('D1', '<img src="images/agenda.png" alt="AGENDA" width="168" height="24">');
$objPHPExcel->getActiveSheet()->SetCellValue('A3', 'Du '.$_REQUEST['date1'].' Au '.$_REQUEST['date2'].', Critères: '.$_REQUEST['tache'] );
$objPHPExcel->getActiveSheet()->SetCellValue('A5', 'CLIENT');
$objPHPExcel->getActiveSheet()->SetCellValue('B5', 'N° DE DOSSIER');
$objPHPExcel->getActiveSheet()->SetCellValue('C5', 'DEBITEUR');
$objPHPExcel->getActiveSheet()->SetCellValue('D5', 'TEL');
$objPHPExcel->getActiveSheet()->SetCellValue('E5', 'DATE');
$objPHPExcel->getActiveSheet()->SetCellValue('F5', 'TRAITEMENT');
$objPHPExcel->getActiveSheet()->SetCellValue('G5', 'DESCRIPTION');
$objPHPExcel->getActiveSheet()->SetCellValue('H5', 'RESTANT DU EN PPAL');
但它给了我以下错误:
注意:未定义的变量:第173行的工作表
注意:未定义的变量:第173行的工作表
我真的迷失了,我认为改变列大小就是这样。
非常感谢任何形式的帮助。
亲切的问候。
SP。
答案 0 :(得分:3)
你必须在使用之前定义$ sheet,就像PHP中的任何变量一样,直到实际创建它才会存在;但您也希望它是您想要设置列宽的实际PHPExcel工作表。
所以
而不是
$objPHPExcel->setActiveSheetIndex(0);
使用
$sheet = $objPHPExcel->setActiveSheetIndex(0);
这是有效的,因为对setActiveSheetIndex()的调用返回活动工作表对象
将$ sheet定义为当前工作表后,您可以调用以设置列宽
修改强>
然后,您还可以简化从
设置单元格值的调用$objPHPExcel->getActiveSheet()->SetCellValue('D1', '<img src="images/agenda.png" alt="AGENDA" width="168" height="24">
到
$sheet->SetCellValue('D1', '<img src="images/agenda.png" alt="AGENDA" width="168" height="24">
等
注意但是,在单元格中设置HTML标记只是将单元格设置为包含文本字符串,这不会在工作表中嵌入图像