cell.setCellValue("'" + value);
This is just putting a literal apostrophe in the cell - it's a workaround when typing manually but in this case, it writes it as actual data
Try changing it to:
cell.setCellValue(String.valueOf(value));