Java 使用 POI 导出Excel,实现横向和纵向的合并单元格

avatar
作者
筋斗云
阅读量:0

在使用Apache POI的库生成Excel的时候,有时候需要在导出的文件中合并单元格,比如对excel文件形成统一的标题栏,改如何写这个代码呢?下面是一个示例代码,演示如何横向和纵向合并单元格。

代码

import org.apache.poi.ss.usermodel.*; import org.apache.poi.xssf.usermodel.XSSFWorkbook; import org.apache.poi.ss.util.CellRangeAddress;  import java.io.FileOutputStream; import java.io.IOException;  public class ExcelMergeCellsDemo {     public static void main(String[] args) {         // 创建一个新的工作簿         Workbook workbook = new XSSFWorkbook();                  // 创建一个新的工作表         Sheet sheet = workbook.createSheet("Sheet1");          // 横向合并单元格         // 创建一个新行         Row row = sheet.createRow(0);                  // 在这一行中创建单元格         Cell cell = row.createCell(0);         cell.setCellValue("横向合并的单元格");          // 合并第一行的第一个单元格到第三个单元格         sheet.addMergedRegion(new CellRangeAddress(0, 0, 0, 2));          // 纵向合并单元格         // 创建一个新行         row = sheet.createRow(2);          // 在这一行中创建单元格         cell = row.createCell(0);         cell.setCellValue("纵向合并的单元格");          // 合并第二行的第一个单元格到第四个单元格         sheet.addMergedRegion(new CellRangeAddress(2, 4, 0, 0));          try (FileOutputStream fileOut = new FileOutputStream("output.xlsx")) {             // 将工作簿写入文件输出流             workbook.write(fileOut);         } catch (IOException e) {             e.printStackTrace();         }          // 关闭工作簿         try {             workbook.close();         } catch (IOException e) {             e.printStackTrace();         }     } } 

这个示例代码将创建一个名为output.xlsx的Excel文件,并在该文件中演示横向和纵向合并单元格:

  • 横向合并:在第1行中,将第1个单元格到第3个单元格合并,并设置合并后的单元格值为“横向合并的单元格”。
  • 纵向合并:在第3行中,将第1个单元格到第5个单元格合并,并设置合并后的单元格值为“纵向合并的单元格”。

你可以根据自己的需求调整合并的单元格范围及其内容。

效果图

image-20240728180850603

其他

另外,对以下内容感兴趣的同学请移步对应教程:

五分钟拥有自己的GPT

ChatGPT-4o教程

Onlyfans-注册以及充值、订阅教程

【一看就会】五分钟完成MidJourney订阅

Poe会员开通教程

【新手必读】2024最新Fantia注册与支付指南

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!