PhpExcel创建多个工作表

Ana*_*mov 5 php phpexcel

您好我正在尝试使用phpexcel创建一个Excel模板

由于某种原因,图像创建新工作表而不是使用当前工作表.因此,当我打开excel文件时,我创建了 工作表工作表1,而不是单个工作.

    objPHPExcel = new PHPExcel();
            $objWorkSheet = $objPHPExcel->createSheet();            

             // Set the active Excel worksheet to sheet 0 
            $objPHPExcel->setActiveSheetIndex(0);  

            //Taslak Verileri
            $objPHPExcel->getActiveSheet()->SetCellValue('D'.'1', 'Firm'); 
            $objPHPExcel->getActiveSheet()->SetCellValue('J'.'1', 'SFUFORMU - FR.PS.21'); 
            $objPHPExcel->getActiveSheet()->SetCellValue('J'.'3', 'NO:'); 
            $objPHPExcel->getActiveSheet()->SetCellValue('D'.'2', 'Name Surname Signature'); 
            $objPHPExcel->getActiveSheet()->SetCellValue('A'.'4', 'Date');
            $objPHPExcel->getActiveSheet()->SetCellValue('A'.'5', 'Stock No:'); 
            $objPHPExcel->getActiveSheet()->SetCellValue('C'.'5', 'Image'); 
            $objPHPExcel->getActiveSheet()->SetCellValue('E'.'5', 'Image'); 
            $objPHPExcel->getActiveSheet()->SetCellValue('G'.'5', 'Resim'); 
            $objPHPExcel->getActiveSheet()->SetCellValue('I'.'5', 'Image'); 
            $objPHPExcel->getActiveSheet()->SetCellValue('K'.'5', 'Quantity'); 
            $objPHPExcel->getActiveSheet()->SetCellValue('M'.'5', 'Price'); 



            $objDrawing = new PHPExcel_Worksheet_Drawing();
                  $objDrawing->setWorksheet($objWorkSheet);
                  $objDrawing->setName("name");
                  $objDrawing->setDescription("Description");
                  $objDrawing->setPath('temp/3.jpeg');
                  $objDrawing->setCoordinates('F9');
                  $objDrawing->setOffsetX(1);
                  $objDrawing->setOffsetY(5);
            $objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel); 
            $objWriter->save('some_excel_file.xlsx'); 
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

在此输入图像描述

vik*_*ter 9

你基本上创建了一个PHPExcel已经带有索引的空表单的对象0.

然后使用索引创建新工作表1.

然后用索引将所有东西写入工作表,0并在第二张纸上添加图片(新创建).

这应该可以解决您的问题:

$objPHPExcel->setActiveSheetIndex(1); 
Run Code Online (Sandbox Code Playgroud)

请注意,您仍然可以创建新工作表,即使第一个已经存在.如果要使用现有工作表,请执行以下操作:

去掉:

   $objWorkSheet = $objPHPExcel->createSheet();            
   $objPHPExcel->setActiveSheetIndex(0); 
Run Code Online (Sandbox Code Playgroud)

用现有的纸张做所有的事情.

$sheet = $objPHPExcel->getSheet(0);
$sheet->setCellValue('D'.'1', 'Firm')//Etc all the stuff.
Run Code Online (Sandbox Code Playgroud)

给图纸相同的图纸:

$objDrawing->setWorksheet($sheet);
Run Code Online (Sandbox Code Playgroud)