From 04dcd0e0361e074e395519db974a1032bee8a6f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=84=E6=B5=B7?= <10402852@qq.com> Date: Mon, 18 Dec 2023 19:30:20 +0800 Subject: [PATCH] 'commit' --- .../java/UnitTest/ImportExcel/TestTitle.java | 114 ++++++++++++++++++ src/main/resource/Excel/1.xlsx | Bin 0 -> 28383 bytes 2 files changed, 114 insertions(+) create mode 100644 src/main/java/UnitTest/ImportExcel/TestTitle.java create mode 100644 src/main/resource/Excel/1.xlsx diff --git a/src/main/java/UnitTest/ImportExcel/TestTitle.java b/src/main/java/UnitTest/ImportExcel/TestTitle.java new file mode 100644 index 00000000..9e6f1f4e --- /dev/null +++ b/src/main/java/UnitTest/ImportExcel/TestTitle.java @@ -0,0 +1,114 @@ +package UnitTest.ImportExcel; + +import org.apache.poi.ss.usermodel.*; +import org.apache.poi.ss.util.CellRangeAddressList; +import org.apache.poi.xssf.usermodel.XSSFWorkbook; + +import java.io.FileInputStream; +import java.io.FileOutputStream; +import java.io.IOException; + +public class TestTitle { + + /** + * 功能:修改指定单元格的样式 + * + * @param wb + * @param sheetIndex + * @param r + * @param c + * @param fontSize + * @param colorIdx + * @return + */ + public static Workbook addComment(Workbook wb, int sheetIndex, int r, int c, + int fontSize, short colorIdx, String str) { + Sheet sheet = wb.getSheetAt(sheetIndex); + Row row = sheet.getRow(r); + Cell cell = row.getCell(c); + // 创建单元格样式 + CellStyle style = wb.createCellStyle(); + style.setAlignment(HorizontalAlignment.CENTER); + style.setVerticalAlignment(VerticalAlignment.CENTER); + style.setBorderTop(BorderStyle.THIN); + style.setBorderBottom(BorderStyle.THIN); + style.setBorderLeft(BorderStyle.THIN); + style.setBorderRight(BorderStyle.THIN); + // 创建字体样式 + Font font = wb.createFont(); + font.setFontName("宋体");//字体 + font.setBold(true);//加粗 + font.setFontHeightInPoints((short) fontSize);//字号 + style.setFont(font); + // 设置背景颜色 + style.setFillForegroundColor(colorIdx); + style.setFillPattern(FillPatternType.SOLID_FOREGROUND); + // 应用样式到单元格 + cell.setCellStyle(style); + + // 判断单元格上是否存在批注 + if (cell.getCellComment() != null) { + // 如果存在批注,先删除 + cell.removeCellComment(); + } + // 创建批注 + Drawing drawing = sheet.createDrawingPatriarch(); + CreationHelper factory = wb.getCreationHelper(); + ClientAnchor anchor = factory.createClientAnchor(); + anchor.setCol1(cell.getColumnIndex()); + anchor.setCol2(cell.getColumnIndex() + 1); + anchor.setRow1(row.getRowNum()); + anchor.setRow2(row.getRowNum() + 3); + Comment comment = drawing.createCellComment(anchor); + comment.setString(factory.createRichTextString(str)); + // 将批注添加到单元格 + cell.setCellComment(comment); + return wb; + } + + /** + * 功能:在EXCEL的指定范围内添加上下拉框,内容通过String[]提供 + * + * @param workbook + * @param sheetIdx + * @param firstRow + * @param lastRow + * @param firstCol + * @param lastCol + * @return + */ + public static Workbook addValidation(Workbook workbook, int sheetIdx, String[] options, int firstRow, int lastRow, int firstCol, int lastCol) { + Sheet sheet = workbook.getSheetAt(sheetIdx); + // 创建数据验证对象 + DataValidationHelper validationHelper = sheet.getDataValidationHelper(); + DataValidationConstraint constraint = validationHelper.createExplicitListConstraint(options); + CellRangeAddressList addressList = new CellRangeAddressList(firstRow, lastRow, firstCol, lastCol); // 指定单元格范围 + DataValidation validation = validationHelper.createValidation(constraint, addressList); + // 应用数据验证到单元格 + sheet.addValidationData(validation); + return workbook; + } + + public static void main(String[] args) throws IOException { + String path = "D:\\dsWork\\QingLong\\src\\main\\resource\\Excel\\"; + String filePath = path + "1.xlsx"; + int r = 5, c = 6;//第6行第7列 + int fontSize = 12; + short colorIdx = IndexedColors.YELLOW.getIndex(); + // 创建下拉框的选项 + String[] options = new String[]{"男", "女", "未知"}; + + try (FileInputStream fileIn = new FileInputStream(filePath); + Workbook workbook = new XSSFWorkbook(fileIn)) { + //在指定单元格上添加背景黄色+标注提示信息 + addComment(workbook, 0, r, c, fontSize, colorIdx, "此单元格应该是非空的!"); + //添加下拉框校验 + addValidation(workbook, 0, options, 4, 21, c - 1, c - 1); + // 保存到文件 + FileOutputStream fileOut = new FileOutputStream(filePath); + workbook.write(fileOut); + } catch (IOException e) { + e.printStackTrace(); + } + } +} diff --git a/src/main/resource/Excel/1.xlsx b/src/main/resource/Excel/1.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..de09ea0ae668120ed120fd60fbeae1c62038ed12 GIT binary patch literal 28383 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%0D^5=r}ts?(^ErH)-meb@`>96}!Wq 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