PHPExcelの範囲のセルのデータを検証しようとしています。単一のセルの検証が機能します。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);
}
私はここで間違っていますか?
P.S.ループは、getStyle()
などの他の関数と連動します。
「$ j ++」を追加するのを忘れました。愚かな間違い。 – theking963