自动合并相同单元格

/*自动合并相同单元格 ------------start-------------*/
  function autoRowSpan(SERVICE_TABLE,row,col)
    {
            var row=0,col=0;
            var SERVICE_TABLE=document.getElementById("SERVICE_TABLE");
        var lastValue="";
        var value="";
        var pos=1;
        for(var i=row;i<SERVICE_TABLE.rows.length;i++)
        {
            value= SERVICE_TABLE.rows[i].cells[col].innerHTML;

            if(lastValue == value)
            {
                SERVICE_TABLE.rows[i].deleteCell(col);
                SERVICE_TABLE.rows[i-pos].cells[col].rowSpan = SERVICE_TABLE.rows[i-pos].cells[col].rowSpan+1;
                pos++;
            }else{
                lastValue = value;
                pos=1;
            }
        }
    }
/*自动合并相同单元格 ------------end-------------*/

转载于:https://www.cnblogs.com/wowchky/archive/2013/03/22/2976054.html

以下是使用Apache POI库在Java中自动合并Excel行单元格的示例代码: ``` import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.CellStyle; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.ss.usermodel.WorkbookFactory; public class ExcelMergeRows { public static void main(String[] args) { try { // 读取Excel文件 FileInputStream fis = new FileInputStream(new File("input.xlsx")); Workbook workbook = WorkbookFactory.create(fis); Sheet sheet = workbook.getSheetAt(0); // 定义要合并的列 int mergeColumn = 0; // 第一列 // 遍历所有行 int rowCount = sheet.getLastRowNum(); for (int i = 0; i <= rowCount; i++) { Row row = sheet.getRow(i); if (row == null) { continue; } // 获取当前单元格和上一个单元格的值 Cell currentCell = row.getCell(mergeColumn); Cell prevCell = null; if (i > 0) { prevCell = sheet.getRow(i - 1).getCell(mergeColumn); } // 如果当前单元格和上一个单元格的值相同,则合并单元格 if (currentCell != null && prevCell != null && currentCell.toString().equals(prevCell.toString())) { CellStyle style = currentCell.getCellStyle(); sheet.getRow(i - 1).getCell(mergeColumn).setCellStyle(style); sheet.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(i - 1, i, mergeColumn, mergeColumn)); } } // 保存Excel文件 FileOutputStream fos = new FileOutputStream(new File("output.xlsx")); workbook.write(fos); fis.close(); fos.close(); workbook.close(); System.out.println("Excel merged successfully!"); } catch (IOException e) { e.printStackTrace(); } } } ``` 这个示例代码假设要合并Excel文件的第一列。您可以通过更改变量`mergeColumn`来指定要合并的列。运行此代码后,将在当前目录下创建一个名为`output.xlsx`的新文件,其中包含已合并单元格
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值