require_once '../Classes/PHPExcel/IOFactory.php';
/** PHPExcel */require_once '../Classes/PHPExcel.php';
$excel2 = PHPExcel_IOFactory::createReader('Excel2007');
$excel2 = $excel2->load('dentkey.xlsx');
$excel2->setLoadAllSheets();
$excel2->setActiveSheetIndex(0);
$excel2->getActiveSheet()->setCellValue('C6', '4')
->setCellValue('C7', '5')
->setCellValue('C8', '6')
->setCellValue('C9', '7');
$excel2->setActiveSheetIndex(1);
$excel2->getActiveSheet()->setCellValue('A7', '4')
->setCellValue('C7', '5');
$objWriter = PHPExcel_IOFactory::createWriter($excel2, 'Excel2007');
$objWriter->save('dentkey1.xlsx');
在这里,我可以加载(.xlsx)文件,我也可以修改(dentkey.xlsx)。
但是生成新的.xlsx文件(dentkey1.xlsx)后,所有工作表数据(dentkey.xlsx)都没有加载,也无法为第二个工作表设置值。
你可以罚款
$excel2->setActiveSheetIndex(1);
$excel2->getActiveSheet()->setCellValue('A7', '4')
->setCellValue('C7', '5');
没有将值5设置为生成(dentkey.xlsx)文件的’C7’列
请帮帮我…
非常感谢
此代码似乎工作,测试在本地环境WampServer版本2.1
Downalod最新版本的PHPExcel从这里PHPExcel 1.7.6
工作代码
<?php
error_reporting(E_ALL);
date_default_timezone_set('Europe/London');
require_once '../Classes/PHPExcel/IOFactory.php';
require_once '../Classes/PHPExcel.php';
$excel2 = PHPExcel_IOFactory::createReader('Excel2007');
$excel2 = $excel2->load('nTest.xlsx'); // Empty Sheet
$excel2->setActiveSheetIndex(0);
$excel2->getActiveSheet()->setCellValue('C6', '4')
->setCellValue('C7', '5')
->setCellValue('C8', '6')
->setCellValue('C9', '7');
$excel2->setActiveSheetIndex(1);
$excel2->getActiveSheet()->setCellValue('A7', '4')
->setCellValue('C7', '5');
$objWriter = PHPExcel_IOFactory::createWriter($excel2, 'Excel2007');
$objWriter->save('Nimit New.xlsx');
?>
从您的代码中删除此行。 $ excel2-> setLoadAllSheets();
希望这将有所帮助
相关文章
转载注明原文:PHPExcel使用多个工作表修改现有的.xlsx文件 - 代码日志