我正在尝试验证PHPExcel中一系列单元格的数据。验证一个单元格是有效的。
$objValidation = $objPHPExcel->getActiveSheet()->getCell('A1')->getDataValidation();
$objValidation->setType( PHPExcel_Cell_DataValidation::TYPE_WHOLE );
$objValidation->setErrorStyle( PHPExcel_Cell_DataValidation::STYLE_STOP );
$objValidation->setAllowBlank(true);
$objValidation->setShowInputMessage(true);
$objValidation->setShowErrorMessage(true);
$objValidation->setErrorTitle('Input error');
$objValidation->setError('Number is not allowed!');
$objValidation->setPromptTitle('Allowed input');
$objValidation->setPrompt('Only 1 and 0 are allowed.');
$objValidation->setFormula1(0);
$objValidation->setFormula2(1);
我可以通过创建一个克隆来验证其他单元格,像这样:
我可以通过创建这样的克隆来验证其他单元格。
$objPHPExcel->getActiveSheet()->getCell("A2")->setDataValidation(clone $objValidation);
但是,如果我尝试通过循环验证数据,它会冻结。
$j = 2;
while($j <= 10)
{
$objPHPExcel->getActiveSheet()->getCell("A$j")->setDataValidation(clone $objValidation);
}
我在这里做错了什么?
附:循环可以用于其他函数,如 getStyle()
等。
$j++
了。愚蠢的错误。 - theking963