我想编写一个代码来填充一个受限的 excel 表,其中 excel 中的所有单元格必须只包含允许的值作为下拉列表(作为复选框,即用户可以从下拉列表中选择多个值来填充 excel 表.所以用户只能从列表中选择多个值。他不能写其他东西)。我已经编写了用户只能选择一个值的代码。我使用了 Apache Poi。
XSSFDataValidationHelper dvHelper = new XSSFDataValidationHelper((XSSFSheet)sheet);
String[] arrayList = allowedValues.toArray(new String[allowedValues.size()]);
XSSFDataValidationConstraint dvConstraint = (XSSFDataValidationConstraint) dvHelper.createExplicitListConstraint(arrayList);
CellRangeAddressList addressList = new CellRangeAddressList(row.getRowNum() + 1, 10000, cell.getColumnIndex(), cell.getColumnIndex());
XSSFDataValidation validation = (XSSFDataValidation) dvHelper.createValidation(dvConstraint, addressList);
validation.setShowErrorBox(true);
validation.createErrorBox("ERROR MESSAGE:Invalid Data", "Please provide valid data in the drop down list.");
sheet.addValidationData(validation);