如何使用phpexcel添加下拉列表控件



当用户添加可用于单个单元格的新行示例而不适用于列或多个列时,我该如何在Excel表中使用Phpexcel添加默认下拉下拉。Excel模板的示例

sl no. |名字|中间名|姓|类|秒|dob |父亲的名字|选定

课程和SEC需要下拉。因此,当添加新的学生记录时,SEC列应该列表。是否可以通过phpexcel。

如果有人可以提供教程或其他东西,那将是真正的帮助。

问候

这称为自动滤波器,/Documentation文件夹中有一个整个文档,描述了如何设置此功能-PHPExcel AutoFilter Reference developer documentation

最简单,您只需使用以下方式将整个工作表定义为自动滤波器区域

$objPHPExcel->getActiveSheet()->setAutoFilter('A1:I20');

(假设20是工作表中的最后一行)

$objPHPExcel->getActiveSheet()->setAutoFilter(
    $objPHPExcel->getActiveSheet()->calculateWorksheetDimension()
);

如果要让phpexcel计算您的范围

        $gender = "Male,female";
          for ($i = 2; $i <= $col_count; $i++) {
                $objValidation = $sheet->getCell('F'.$i)->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('"'.$gender.'"');
            }

最新更新