diff --git a/fesod/src/main/java/org/apache/fesod/excel/write/merge/LoopMergeStrategy.java b/fesod/src/main/java/org/apache/fesod/excel/write/merge/LoopMergeStrategy.java index 1474ca75d..0bea7052f 100644 --- a/fesod/src/main/java/org/apache/fesod/excel/write/merge/LoopMergeStrategy.java +++ b/fesod/src/main/java/org/apache/fesod/excel/write/merge/LoopMergeStrategy.java @@ -81,6 +81,12 @@ public void afterRowDispose(RowWriteHandlerContext context) { columnIndex, columnIndex + columnExtend - 1); context.getWriteSheetHolder().getSheet().addMergedRegionUnsafe(cellRangeAddress); + } else { + // Iterate through the columns to clear the content of merged cells + for (int i = 0; i < columnExtend; i++) { + // Access the cell at the specified column index in the current row and set it to blank + context.getRow().getCell(columnIndex + i).setBlank(); + } } } } diff --git a/fesod/src/test/java/org/apache/fesod/excel/fill/FillDataTest.java b/fesod/src/test/java/org/apache/fesod/excel/fill/FillDataTest.java index 118dcce8a..af1fed72a 100644 --- a/fesod/src/test/java/org/apache/fesod/excel/fill/FillDataTest.java +++ b/fesod/src/test/java/org/apache/fesod/excel/fill/FillDataTest.java @@ -231,8 +231,8 @@ private void complexFill(File file, File template) { } List list = FastExcel.read(file).sheet().headRowNumber(3).doReadSync(); Assertions.assertEquals(list.size(), 21L); - Map map19 = (Map) list.get(19); - Assertions.assertEquals("Zhang San", map19.get(0)); + Map map18 = (Map) list.get(18); + Assertions.assertEquals("Zhang San", map18.get(0)); } private void fill(File file, File template) {