Index: src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSheet.java =================================================================== --- src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSheet.java (revision 1886124) +++ src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSheet.java (working copy) @@ -603,6 +603,7 @@ if(autoCreate) { //drawingNumber = #drawings.size() + 1 int drawingNumber = getPackagePart().getPackage().getPartsByContentType(XSSFRelation.VML_DRAWINGS.getContentType()).size() + 1; + drawingNumber = getNextPartNumber(XSSFRelation.VML_DRAWINGS, drawingNumber); RelationPart rp = createRelationship(XSSFRelation.VML_DRAWINGS, XSSFFactory.getInstance(), drawingNumber, false); drawing = rp.getDocumentPart(); String relId = rp.getRelationship().getId(); Index: src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSheet.java =================================================================== --- src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSheet.java (revision 1886124) +++ src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSheet.java (working copy) @@ -1995,4 +1995,30 @@ } } } + + @Test + public void bug65120() throws IOException { + XSSFWorkbook wb = new XSSFWorkbook(); + CreationHelper creationHelper = wb.getCreationHelper(); + + Sheet sheet1 = wb.createSheet(); + Cell cell1 = sheet1.createRow(0).createCell(0); + Comment comment1 = sheet1.createDrawingPatriarch().createCellComment(creationHelper.createClientAnchor()); + cell1.setCellComment(comment1); + + Sheet sheet2 = wb.createSheet(); + Cell cell2 = sheet2.createRow(0).createCell(0); + Comment comment2 = sheet2.createDrawingPatriarch().createCellComment(creationHelper.createClientAnchor()); + cell2.setCellComment(comment2); + + wb.removeSheetAt(0); + + Sheet sheet3 = wb.createSheet(); + Cell cell3 = sheet3.createRow(0).createCell(0); + Comment comment3 = sheet3.createDrawingPatriarch().createCellComment(creationHelper.createClientAnchor()); + cell3.setCellComment(comment3); + + wb.close(); + } + }