poi excel动态下拉框

网上有很多通过poi实现excel动态下拉框的文章,但是,大多数的实现思路是这样的
查询下拉列表----写入单独sheet------隐藏sheet页-----利用excel公式读取隐藏sheet页中的数据实现下拉

现提供一种相对简单的实现方案

废话不多说,直接上工具方法

  /**
     * 下拉框赋值
     *
     * @param provinceList 需要赋值的集合
     * @param mainSheet    待赋值的sheet页
     * @param rowNum       开始行
     * @param colNum       要赋值的列
     */
    public void writeDropDownData(List provinceList, HSSFSheet mainSheet, int rowNum, int colNum) {
        CellRangeAddressList cellRangeAddressList = new CellRangeAddressList(rowNum, last_row_num, colNum, colNum);
        String[] dataArray = provinceList.toArray(new String[0]);
        DVConstraint dvConstraint = DVConstraint.createExplicitListConstraint(dataArray);
        HSSFDataValidation dataValidation = new HSSFDataValidation(cellRangeAddressList, dvConstraint);
        dataValidation.createErrorBox("error", "请选择有效的选项,或下载最新重试");
        dataValidation.setShowErrorBox(true);
        //  对sheet页生效
        mainSheet.addValidationData(dataValidation);
    }

你可能感兴趣的:(javaWeb开发,excel,java,开发语言)