为了账号安全,请及时绑定邮箱和手机立即绑定

phpexcel如何批量设置数据验证

phpexcel如何批量设置数据验证

PHP
MYYA 2019-03-18 16:25:11
phpexcel设置数据验证的方法是这样 $objValidation = $excel->getSheet(0)->getCell('A1')->getDataValidation(); $objValidation->setType( PHPExcel_Cell_DataValidation::TYPE_LIST );//数据验证的类型,这是列表 $objValidation->setErrorStyle( PHPExcel_Cell_DataValidation::STYLE_INFORMATION );//输错了的话显示的提示属于哪个级别 $objValidation->setAllowBlank(false);//允许本格为空,false是不允许 $objValidation->setShowInputMessage(true);//选中时显示输入提示 $objValidation->setShowErrorMessage(true);//数据错误时显示错误提示 $objValidation->setShowDropDown(true);//显示下拉箭头 $objValidation->setErrorTitle('输入错误'); $objValidation->setError('输入错误'); $objValidation->setPrompt('请从下拉列表里选择'); $objValidation->setFormula1('"选项1,选项2"'); 但是这样一次只能把一个单元格设置成数据验证,如果想把一整列都设置成一样的数据验证,该怎么办?不会是要循环吧? 尝试过把第一行getCell的参数改成'A$1',不行
查看完整描述

1 回答

?
斯蒂芬大帝

TA贡献1827条经验 获得超8个赞

感觉你已经用不到了,但是考虑到别人可能会跟我一样搜到这- -就把我的解决方案说一下
如果需要查看原文(不太好找,自己搜索下)-->点击查看原文

$sht = $objPHPExcel->getActiveSheet();
$objValidation = $sht->getDataValidation();
$objValidation->setType( PHPExcel_Cell_DataValidation::TYPE_LIST );
$objValidation->setErrorStyle( PHPExcel_Cell_DataValidation::STYLE_INFORMATION );
$objValidation->setAllowBlank(false);
$objValidation->setShowDropDown(true);
$objValidation->setShowInputMessage(true);
$objValidation->setShowErrorMessage(true);
$objValidation->setErrorTitle("输入的值有误");
$objValidation->setError("您输入的值不在下拉框列表内");
$objValidation->setPromptTitle('设备类型');
$objValidation->setFormula1('"列表项1,列表项2,列表项3"');
$sht->setDataValidation('$A:$A', $oVal); 
查看完整回答
反对 回复 2019-03-18
  • 1 回答
  • 0 关注
  • 703 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信