zoukankan      html  css  js  c++  java
  • C# 获取Excel中的合并单元格

    C# 获取Excel中的合并单元格

    我们在制作表格时,有时经常需要合并及取消合并一些单元格。在取消合并单元格时需要逐个查找及取消,比较麻烦。这里分享一个简单的方法来识别Excel中的合并单元格,识别这些合并单元格之后对这些单元格进行取消合并操作,还可以进行其他操作如设置格式等。

    为了展示,这里我使用了一个模板Excel文件,它含有两个合并区域,如下图:

                        

    代码使用:

    步骤1实例化一个Workbook对象并加载Excel文档。

    Workbook workbook = new Workbook();
    workbook.LoadFromFile("测试.xlsx");

    步骤2获取Excel文档的第一个工作表。

    Worksheet sheet = workbook.Worksheets[0];

    步骤3获取合并区域并将结果保存到一个CellRange 数组。

    CellRange[] range = sheet.MergedCells;

    步骤4遍历数组,将合并区域中的单元格取消合并。

    foreach (CellRange cell in range)
    {
        cell.UnMerge();
    }

    步骤5保存文档。

    workbook.SaveToFile("输出.xlsx");

    效果图:

    完整代码:

    using Spire.Xls;
    
    namespace Detect_Merged_Cells
    {
        class Program
        {
            static void Main(string[] args)
            {
                Workbook workbook = new Workbook();
                workbook.LoadFromFile("测试.xlsx");
    
                Worksheet sheet = workbook.Worksheets[0];
     
                CellRange[] range = sheet.MergedCells;
                foreach (CellRange cell in range)
                {
                    cell.UnMerge();
                }
    
                workbook.SaveToFile("输出.xlsx");
            }
        }
    }

    这里我使用了一个免费版Excel组件,可以看出这个方法很简单,只需要几行代码,感兴趣的朋友可以从NuGet下载:https://www.nuget.org/packages/FreeSpire.XLS/

  • 相关阅读:
    smarty模板中如何嵌入javascript脚本
    正则表达式(一)
    c#获取凌晨时间
    启动VUE项目报错:Error: Cannot find module 'node-sass'
    安装VUE过程记录
    Jenkins自动化工具完整介绍
    使用VS开发C#的常用快捷键
    获取枚举中的描述值
    PDF链接转字节流输出
    MSSQL执行计划的优化建议
  • 原文地址:https://www.cnblogs.com/Yesi/p/5826192.html
Copyright © 2011-2022 走看看