PHPExcel在列上设置默认下拉选项
发布时间:2020-12-13 17:16:08 所属栏目:PHP教程 来源:网络整理
导读:我正在使用 PHPExcel生成模板Excel文档供用户下载,以便他们上传批量数据. 作为其中的一部分,我希望某些字段可以从下拉列表中进行选择. DataValidation示例显示如何为单个单元格执行此操作,如下所示: $objValidation = $objPHPExcel-getActiveSheet()-getCel
我正在使用
PHPExcel生成模板Excel文档供用户下载,以便他们上传批量数据.
作为其中的一部分,我希望某些字段可以从下拉列表中进行选择. DataValidation示例显示如何为单个单元格执行此操作,如下所示: $objValidation = $objPHPExcel->getActiveSheet()->getCell('B5')->getDataValidation(); $objValidation->setType( PHPExcel_Cell_DataValidation::TYPE_LIST ); $objValidation->setErrorStyle( PHPExcel_Cell_DataValidation::STYLE_INFORMATION ); $objValidation->setAllowBlank(false); $objValidation->setShowInputMessage(true); $objValidation->setShowErrorMessage(true); $objValidation->setShowDropDown(true); $objValidation->setErrorTitle('Input error'); $objValidation->setError('Value is not in list.'); $objValidation->setPromptTitle('Pick from list'); $objValidation->setPrompt('Please pick a value from the drop-down list.'); $objValidation->setFormula1('"Item A,Item B,Item C"'); // Make sure to put the list items between " and " !!! 这适用于单个单元格,但我希望在添加新数据行时,B列中的所有单元格都是下拉列表.我怎样才能做到这一点? 谢谢 解决方法
你可以尝试这个代码:你的起始单元格没有$i = 3你可以改变这个值和$i< = 250循环区域.
for ($i = 3; $i <= 250; $i++) { $objValidation2 = $objPHPExcel->getActiveSheet()->getCell('N' . $i)->getDataValidation(); $objValidation2->setType(PHPExcel_Cell_DataValidation::TYPE_LIST); $objValidation2->setErrorStyle(PHPExcel_Cell_DataValidation::STYLE_INFORMATION); $objValidation2->setAllowBlank(false); $objValidation2->setShowInputMessage(true); $objValidation2->setShowDropDown(true); $objValidation2->setPromptTitle('Pick from list'); $objValidation2->setPrompt('Please pick a value from the drop-down list.'); $objValidation2->setErrorTitle('Input error'); $objValidation2->setError('Value is not in list'); $objValidation2->setFormula1('"male,female"'); } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |