在PHPexcel中,我能够锁定单元格
$objPHPExcel->getActiveSheet()->protectCells('A1:D1','PHP'); $objPHPExcel->getActiveSheet()->getProtection()->setSheet(true);
如果我双击A1到D1之间的任何单元格,它将要求密码.
但是如果我双击任何其他单元格(例如)A2
"The cell or chart that you are trying to change is protected and therefore read-only".
它锁定整个工作表,是否可以仅锁定特定的单元格并保留其他单元格可编辑?
最后,我找到了正确的方法.
$objPHPExcel = new PHPExcel; $objSheet = $objPHPExcel->getActiveSheet();
//保护细胞范围
$objSheet->protectCells('A1:B1','PHP');
// UNPROTECT THE CELL RANGE
$objSheet->getStyle('A2:B2')->getProtection() ->setLocked(PHPExcel_Style_Protection::PROTECTION_UNPROTECTED);
//保护工作表
$objSheet->getProtection()->setSheet(true);
这是完美的工作!