springboot java excel导出表格内某一列设置下拉选数据量过大将下拉内的数据放到另外一个sheet页中并将此sheet页隐藏下载后用永中excel打开不显示下拉但是存放数据的sheet不隐藏的话下载后用永中excel打开就可以看到下拉怎么解决
要实现在Excel导出中设置下拉选项,并将下拉选项的数据放到另一个隐藏的Sheet页中,可以按照以下步骤操作:
- 创建一个包含下拉选项数据的隐藏Sheet页。
- 在主Sheet页中设置相应列的下拉选项,参考下面的代码示例:
// 获取Workbook对象
Workbook workbook = new HSSFWorkbook();
// 创建隐藏Sheet页
Sheet hiddenSheet = workbook.createSheet("HiddenSheet");
workbook.setSheetHidden(workbook.getSheetIndex(hiddenSheet), true);
// 在隐藏Sheet页中设置下拉选项数据
CellStyle cellStyle = workbook.createCellStyle();
cellStyle.setDataValidationConstraint(createFormulaListConstraint("HiddenSheet!$A$1:$A$10"));
DataValidationHelper validationHelper = new HSSFDataValidationHelper((HSSFSheet) hiddenSheet);
CellRangeAddressList addressList = new CellRangeAddressList(0, 0, 0, 0);
DataValidation validation = validationHelper.createValidation(addressList, cellStyle);
hiddenSheet.addValidationData(validation);
// 在主Sheet页中设置下拉选项
Sheet mainSheet = workbook.createSheet("MainSheet");
Row row = mainSheet.createRow(0);
Cell cell = row.createCell(0);
cell.setCellValue("请选择");
cell.setCellStyle(cellStyle);
// 创建公式下拉选项约束
private static DataValidationConstraint createFormulaListConstraint(String formula) {
DataValidationConstraint constraint = DVConstraint.createFormulaListConstraint(formula);
return constraint;
}
- 导出Excel文件并下载。
- 使用永中Excel打开下载的文件时,隐藏的Sheet页中的下拉选项数据不会显示。
请根据实际情况调整代码中的Sheet名称、下拉选项数据范围和单元格位置等参数
原文地址: https://www.cveoy.top/t/topic/it0v 著作权归作者所有。请勿转载和采集!