You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用C# Interop Excel在Excel中插入空行与合并单元格

使用Interop Excel插入空行并合并单元格

必要的引用与声明

首先确保项目引用了Microsoft.Office.Interop.Excel程序集,然后在代码顶部添加命名空间引用:

using Excel = Microsoft.Office.Interop.Excel;

完整代码示例

以下代码实现从A7行开始插入指定数量的空行,随后合并B7至E7单元格:

// 创建Excel应用实例
Excel.Application excelApp = new Excel.Application();
excelApp.Visible = true; // 调试时设为true可实时查看操作

// 打开现有工作簿(如需新建则用excelApp.Workbooks.Add())
Excel.Workbook workbook = excelApp.Workbooks.Open(@"C:\YourFilePath\YourWorkbook.xlsx");
Excel.Worksheet worksheet = workbook.Worksheets["Sheet1"]; // 替换为目标工作表名称

// 定义要插入的空行数量(可根据业务需求动态赋值)
int rowsToInsert = 5;

// 从A7行开始向下插入指定数量的空行
Excel.Range insertRange = worksheet.Range[$"A7:A{7 + rowsToInsert - 1}"];
insertRange.EntireRow.Insert(Excel.XlInsertShiftDirection.xlShiftDown);

// 合并B7至E7单元格
Excel.Range mergeRange = worksheet.Range["B7:E7"];
mergeRange.Merge();

// 保存工作簿(按需选择是否执行)
workbook.Save();

// 释放COM资源(避免Excel进程后台残留)
System.Runtime.InteropServices.Marshal.ReleaseComObject(mergeRange);
System.Runtime.InteropServices.Marshal.ReleaseComObject(insertRange);
System.Runtime.InteropServices.Marshal.ReleaseComObject(worksheet);
System.Runtime.InteropServices.Marshal.ReleaseComObject(workbook);
System.Runtime.InteropServices.Marshal.ReleaseComObject(excelApp);

关键步骤说明

  • 插入空行:选中从A7起始的连续rowsToInsert行单元格区域,调用EntireRow.Insert方法实现向下插入,参数xlShiftDown指定原有行向下偏移。
  • 合并单元格:选中B7到E7的目标区域后调用Merge()即可完成合并,由于所有数据为字符串类型,无需额外处理公式或数字兼容问题。
  • 资源释放:Interop生成的COM对象必须手动释放,否则会导致Excel进程在后台持续占用系统资源。

内容的提问来源于stack exchange,提问作者user1234

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 03:24:52