| | |
| | | |
| | | import com.alibaba.excel.metadata.Head; |
| | | import com.alibaba.excel.metadata.data.WriteCellData; |
| | | import com.alibaba.excel.write.handler.AbstractCellWriteHandler; |
| | | import com.alibaba.excel.write.handler.CellWriteHandler; |
| | | import com.alibaba.excel.write.metadata.holder.WriteSheetHolder; |
| | | import com.alibaba.excel.write.metadata.holder.WriteTableHolder; |
| | | import org.apache.poi.ss.usermodel.*; |
| | | import org.apache.poi.ss.util.CellRangeAddress; |
| | | import org.apache.poi.ss.util.CellRangeAddressList; |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.Arrays; |
| | | import java.util.List; |
| | | |
| | | /** |
| | |
| | | Sheet sheet = writeSheetHolder.getSheet(); |
| | | |
| | | |
| | | // 获取数据校验helper |
| | | // 获取数据校验helper,excel的下拉就是通过数据校验设置 |
| | | DataValidationHelper dataValidationHelper = sheet.getDataValidationHelper(); |
| | | |
| | | // 设置题目下拉范围,第一列,1500行内 |
| | |
| | | DataValidation subjectValidation = dataValidationHelper.createValidation(subjectConstraint, subjectTypeRange); |
| | | sheet.addValidationData(subjectValidation); |
| | | |
| | | // 设置选项下拉范围,第4列,1500行内 |
| | | CellRangeAddressList optionRange = new CellRangeAddressList(2, 1500, 3, 3); |
| | | // 添加选项下拉 |
| | | DataValidationConstraint optionConstraint = dataValidationHelper.createExplicitListConstraint(optionList); |
| | | DataValidation optionValidation = dataValidationHelper.createValidation(optionConstraint, optionRange); |
| | | sheet.addValidationData(optionValidation); |
| | | // // 设置选项下拉范围,第4列,1500行内 |
| | | // CellRangeAddressList optionRange = new CellRangeAddressList(2, 1500, 3, 3); |
| | | // // 添加选项下拉 |
| | | // DataValidationConstraint optionConstraint = dataValidationHelper.createExplicitListConstraint(optionList); |
| | | // DataValidation optionValidation = dataValidationHelper.createValidation(optionConstraint, optionRange); |
| | | // sheet.addValidationData(optionValidation); |
| | | |
| | | // 设置选项下拉范围,第4列,1500行内 |
| | | CellRangeAddressList answerRange = new CellRangeAddressList(2, 1500, 5, 5); |