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/

  • 相关阅读:
    window.location.href无法跳转的解决办法
    HTTP 错误 405.0
    C# 浅拷贝与深拷贝
    C# .ToString() 格式化
    深入理解AsyncTask
    【转】Android子线程真的不能更新UI么
    深入理解Activity的启动模式
    Android7.0,剪裁后提示“无法保存经过裁剪的图片”
    Android工程改包名
    javah命令,提示“找不到类文件”
  • 原文地址:https://www.cnblogs.com/Yesi/p/5826192.html
Copyright © 2011-2022 走看看