Excel处理控件Spire.XLS系列教程:C# 合并、或取消合并 Excel 单元格

合并单元格是指将两个或多个相邻的单元格合并为一个大单元格。这样做主要是为了排版、制表的需要,使表格的标题或特定内容能够跨多个列或行显示,提升表格的可读性和美观度。但是当发现合并单元格后影响到了数据的排序、筛选等操作,或者表格布局发生变化,不再需要合并的单元格时,就需要取消合并。本文将演示如何使用 ++Spire.XLS for .NET++ ++++ 通过 C# 合并或取消合并 Excel 中的单元格

Spire.XLS for .NET试用下载

安装 Spire.XLS for .NET

E-iceblue旗下Spire系列产品是国产文档处理领域的优秀产品,支持国产化信创. 首先,您需要将 Spire.XLS for .NET 包含的 DLL 文件作为引用添加到您的 .NET 项目中。DLL 文件可以从此链接下载,也可以通过 NuGet 安装。

复制代码
PM> Install-Package Spire.XLS

C# 合并 Excel 指定行或列中的单元格

要合并 Excel 中指定行或列的单元格,可以直接调用 Workheet.Rows[].Merge()Workheet.Columns[].Merge() 方法。具体步骤如下:

  • 创建一个 Workbook 类的对象。
  • 使用 Workbook.LoadFromFile() 方法加载 Excel 文件。
  • 通过 Workbook.Worksheets[] 属性获取指定工作表。
  • 使用 Workheet.Columns[].Merge()Workheet.Rows[].Merge() 方法合并特定列或指定行中的单元格。
  • 使用 Workbook.SaveToFile() 方法保存结果文件。
复制代码
using Spire.Xls;

namespace MergeRowsColumns
{
    class Program
    {
        static void Main(string[] args)
        {
            // 创建Workbook对象
            Workbook workbook = new Workbook();

            // 加载Excel文件
            workbook.LoadFromFile("费用.xlsx");

            // 获取第一张工作表
            Worksheet sheet = workbook.Worksheets[0];

            // 合并第一行
            sheet.Rows[0].Merge();

            // 合并第一列
            //sheet.Columns[0].Merge();

            // 保存结果文件
            workbook.SaveToFile("合并行或列.xlsx", ExcelVersion.Version2016);
        }
    }
}

C# 合并 Excel 中的指定单元格区域

Spire.XLS for .NET 提供的 Workbook.Range[].Merge() 方法可以实现合并指定的单元格范围。具体步骤如下:

  • 创建一个 Workbook 类的对象。
  • 使用 Workbook.LoadFromFile() 方法加载 Excel 示例文件。
  • 使用 Workbook.Worksheets[] 属性获取指定工作表。
  • 使用 Workbook.Range[].Merge() 方法合并特定单元格区域。
  • 使用 Workbook.SaveToFile() 方法保存结果文件。
复制代码
using Spire.Xls;

namespace MergeCells
{
    class Program
    {
        static void Main(string[] args)
        {
            // 创建Workbook对象
            Workbook workbook = new Workbook();

            // 加载Excel文件
            workbook.LoadFromFile("费用.xlsx");

            // 获取第一张工作表
            Worksheet sheet = workbook.Worksheets[0];

            //合并指定单元格区域
            sheet.Range["H3:H5"].Merge();

            // 保存结果文件
            workbook.SaveToFile("合并单元格区域.xlsx", ExcelVersion.Version2016);
        }
    }
}

C# 取消合并 Excel 指定行或列中的单元格

对于已合并的 Excel 行或列,Spire.XLS for .NET 还提供了 Workheet.Rows[].UnMerge()Worksheet.Columns[].UnMerge() 方法取消合并特定列或行的单元格。具体步骤如下:

  • 创建一个 Workbook 类的对象。
  • 使用 Workbook.LoadFromFile() 方法加载 Excel 示例文件。
  • 使用 Workbook.Worksheets[] 属性获取指定工作表。
  • 使用 Worksheet.Columns[].UnMerge()Workheet.Rows[].UnMerge() 方法取消合并特定列或行中的已合并单元格。
  • 使用 Workbook.SaveToFile() 方法保存结果文件。
复制代码
using Spire.Xls;

namespace UnMergeRowsColumns
{
    class Program
    {
        static void Main(string[] args)
        {
            // 创建Workbook对象
            Workbook workbook = new Workbook();

            // 加载Excel文件
            workbook.LoadFromFile("合并行或列.xlsx");

            // 获取第一张工作表
            Worksheet sheet = workbook.Worksheets[0];

            // 取消合并第一行
            sheet.Rows[0].UnMerge();

            // 取消合并第一列
            //sheet.Columns[0].UnMerge()

            // 保存结果文件
            workbook.SaveToFile("取消合并行或列.xlsx", ExcelVersion.Version2016);
        }
    }
}

C# 取消合并 Excel 中的指定单元格区域

此外,用户还能使用 Workbook.Range[].UnMerge() 方法取消合并指定的单元格范围。具体步骤如下:

  • 创建一个 Workbook 类的对象。
  • 使用 Workbook.LoadFromFile() 方法加载 Excel 示例文件。
  • 使用 Workbook.Worksheets[] 属性获取指定工作表。
  • 使用 Workbook.Range[].UnMerge() 方法取消合并特定单元格区域。
  • 使用 Workbook.SaveToFile() 方法保存结果文件。
复制代码
using Spire.Xls;

namespace UnMergeCells
{
    class Program
    {
        static void Main(string[] args)
        {
            // 创建Workbook对象
            Workbook workbook = new Workbook();

            // 加载Excel文件
            workbook.LoadFromFile("合并单元格区域.xlsx");

            // 获取第一张工作表
            Worksheet sheet = workbook.Worksheets[0];

            // 取消合并指定单元格区域
            sheet.Range["H3:H5"].UnMerge();

            // 保存结果文件
            workbook.SaveToFile("取消合并单元格区域.xlsx", ExcelVersion.Version2016);
        }
    }
}
相关推荐
陈天伟教授3 小时前
人工智能训练师认证教程(2)Python os入门教程
前端·数据库·python
信看4 小时前
NMEA-GNSS-RTK 定位html小工具
前端·javascript·html
Tony Bai4 小时前
【API 设计之道】04 字段掩码模式:让前端决定后端返回什么
前端
苏打水com4 小时前
第十四篇:Day40-42 前端架构设计入门——从“功能实现”到“架构思维”(对标职场“大型项目架构”需求)
前端·架构
king王一帅4 小时前
流式渲染 Incremark、ant-design-x markdown、streammarkdown-vue 全流程方案对比
前端·javascript·人工智能
苏打水com4 小时前
第十八篇:Day52-54 前端跨端开发进阶——从“多端适配”到“跨端统一”(对标职场“全栈化”需求)
前端
Bigger5 小时前
后端拒写接口?前端硬核自救:纯前端实现静态资源下载全链路解析
前端·浏览器·vite
BD_Marathon5 小时前
【JavaWeb】路径问题_前端绝对路径问题
前端
whyfail6 小时前
Vue原理(暴力版)
前端·vue.js