`

C# 合并Excel工作表

阅读更多

文档合并、拆分是实现文档管理的一种有效方式。在工作中,我们可能会遇到需要将多个文档合并的情况,那如何来实现呢,本文将进一步介绍。

使用工具Free Spire.XLS for .NET

          Visual Studio 2013

PS: 编辑代码前需要引用Spire.XLS.dll到项目程序中,并添加相应的命名空间

合并Excel表格分两种:

  • 合并多个工作表为一个工作簿
  • 二是合并多个工作表为一个工作表

一、合并多个工作表为一个工作簿

using Spire.Xls;

namespace MergeWorksheet_XLS
{
    class Program
    {
        static void Main(string[] args)
        {
            //创建一个Workbook类对象
            Workbook newbook = new Workbook();
            newbook.Version = ExcelVersion.Version2013;
            //删除文档中的工作表(新创建的文档默认包含3张工作表)
            newbook.Worksheets.Clear();

            //创建一个临时的workbook,用于加载需要合并的Excel文档
            Workbook tempbook = new Workbook();

            //加载需要合并的Excel文档保存到数组
            string[] excelFiles = new string[] { @"C:\Users\Administrator\Desktop\test.xlsx", @"C:\Users\Administrator\Desktop\sample.xlsx" };

            //遍历数组
            for (int i = 0; i < excelFiles.Length; i++)
            {
                //载入Excel文档
                tempbook.LoadFromFile(excelFiles[i]);
                //调用AddCopy方法,将文档中所有工作表添加到新的workbook
                foreach (Worksheet sheet in tempbook.Worksheets)
                {
                    newbook.Worksheets.AddCopy(sheet);
                }
            }
            //保存文档
            newbook.SaveToFile("MergeFiles.xlsx", ExcelVersion.Version2013);            
        }
    }
}

 

合并前后对比效果:

合并前:



 

合并后:



 二、合并多个工作表为一个工作表

using Spire.Xls;

namespace MergeWorksheetsToOne_XLS
{
    class Program
    {
        static void Main(string[] args)
        {
            //实例化一个Workbook类,加载Excel文档
            Workbook workbook = new Workbook();
            workbook.LoadFromFile(@"C:\Users\Administrator\Desktop\test.xlsx");

            //获取第1、2张工作表
            Worksheet sheet1 = workbook.Worksheets[0];
            Worksheet sheet2 = workbook.Worksheets[1];

            //复制第2张工作表内容到第1张工作表的指定区域中
            sheet2.AllocatedRange.Copy(sheet1.Range[sheet1.LastRow +3, 1]);

            //删除第2张工作表
           sheet2.Remove();
            //重命名的工作表1
           sheet1.Name = "外贸单证";

            //保存并运行文档
           workbook.SaveToFile("MergeSheets.xlsx", ExcelVersion.Version2013);
           System.Diagnostics.Process.Start("MergeSheets.xlsx");
        }
    }
}

 

合并前后对比效果:

合并前:



 

合并后:



 另外,如需拆分Excel工作表,可参阅这篇博客:C# 拆分Excel工作表

 

本文转载自:https://www.cnblogs.com/Yesi/p/8342594.html

  • 大小: 103.7 KB
  • 大小: 43.6 KB
  • 大小: 89.8 KB
  • 大小: 85.1 KB
分享到:
评论

相关推荐

    C#合并EXCEL单元格

    "C#合并EXCEL单元格"的主题涉及到如何使用C#编程语言操作Microsoft Excel文档,特别是针对那些需要将相同内容的单元格进行纵向合并的需求。下面将详细介绍这个主题,并提供一些关键知识点。 首先,你需要引入能够...

    C#导出Excel复杂表头解决方案

    1. **创建工作簿和工作表**:初始化Excel文档,创建新的工作簿和工作表。 2. **设置单元格值**:在指定的行和列位置写入文本、数字或日期等数据。 3. **处理复杂表头**:利用NPOI的API进行单元格合并,创建多级标题...

    C#将Excel中的Sheet进行合并

    要合并Sheet页,我们需要先将源Sheet的数据复制到一个新的工作表中,然后删除源Sheet。以下是一个基本的合并示例: ```csharp // 创建一个新的工作表,作为合并后的结果 ExcelWorksheet mergedSheet = package....

    C# 合并 excel文件中信息的 连接操作

    在合并Excel文件时,可能需要依据某些共同的字段(例如ID)将数据连接在一起。这可以通过遍历多个工作表,比较并合并相同ID的数据来实现。你可以创建一个数据结构(如List&lt;自定义类&gt;)来存储这些信息,然后根据需要...

    C#合并多个Excel到一个Excel

    这个示例假设所有Excel文件只有一个工作表,并且都位于同一目录下。在实际应用中,可能需要根据具体需求进行更复杂的逻辑处理,例如处理多工作表、过滤特定工作表、处理不同格式的数据等。 总之,通过C#和Excel ...

    使用C#合并头结构一致的excel、csv文件

    总的来说,通过使用适当的库和理解文件格式,C#提供了强大的工具来处理和合并Excel及CSV文件。只要确保文件头结构一致,就可以轻松实现批量合并,这对于数据处理和分析任务来说非常有用。在实际项目中,你可能还需要...

    C# 操作excel单元格合并,格式,冻结

    通过`ActiveSheet`属性获取当前活动的工作表,并为其指定名称。 ### 打开现有Excel文件 ```csharp string strExcelPathName = AppDomain.CurrentDomain.BaseDirectory + "excelSheetName.xls"; Excel.Workbook ...

    C#方法高效合并多个Excel表格,适用大数据量。

    在描述中提到的“Copy方法”,通常是指在处理Excel工作表时,使用Copy命令复制一个工作表到另一个工作簿。在C#中,使用EPPlus,我们可以创建一个新的WorkSheet对象,并将原始工作表的数据复制到新对象。但是,这种...

    C#excel转图片(亲自测试过可以用),学习使用

    接下来,我们来看如何使用C#将Excel工作表转换为图片。首先,需要创建一个`ExcelPackage`对象来加载Excel文件,然后获取到需要转换的工作表。接着,可以利用`Image`类将工作表渲染为图像。以下是一个基本的代码示例...

    C#合并excel操作

    通过这样的方法,我们可以利用C#和NPOI库轻松实现“C#合并excel操作”。这在处理大量Excel数据整合、报告生成或数据分析场景中非常实用。记住,理解并熟练掌握这些工具和技巧,将极大地提升你在IT领域的专业能力。

    C#导出EXCEL合并 字体颜色居中

    ### C#导出Excel并实现单元格合并及样式设置 #### 概述 在实际开发过程中,导出数据到Excel是常见的需求之一。而在导出过程中实现数据的合并以及字体颜色居中等功能,则是对用户体验的一种优化提升。本文将详细...

    C#DataGridView多维合并表头,DataGridView多维表导出至EXCEL(源码范例)

    首先,需要创建一个`Excel.Application`对象,然后打开或创建一个新的Excel工作簿。接着,通过遍历`DataGridView`的行和列,将每个单元格的数据填充到Excel的工作表中。注意,处理多维表头时,可能需要创建多个工作...

    C#.Net操作Excel通用帮助类ExecelHelper.cs

    Excel输出打印模块,将DataTable数据写入...支持合并指定列的相同行,支持隐藏指定名称/索引的工作表,支持拷贝指定个数的工作表的副本并重命名,根据名称删除工作表,向指定文本框写入数据,对指定WorkSheet操作等。

    npoi实现excel中多个表格数据分别合并

    在“npoi实现excel中多个表格数据分别合并”这个主题中,我们将深入探讨如何利用NPOI库来处理Excel文件中的多个工作表(表格)并进行数据的合并操作。这在数据处理、分析和报告生成等场景中非常常见。 首先,我们...

    C#利用Excel生成图片

    这个接口允许我们直接在代码中控制Excel应用程序,包括创建、读取、修改和保存Excel工作簿。本篇文章将深入探讨如何使用C#通过Excel COM接口生成包含多种图表的图片。 首先,我们需要在项目中引用Microsoft.Office....

    C#处理 Excel合并、拆分

    3. **调整引用**:如果原工作表中的公式引用了其他工作表,合并时需要更新这些引用,确保它们指向正确的新位置。 4. **保存合并后的文件**:最后,将合并后的工作簿保存为新的Excel文件。 对于Excel文件的拆分,...

    C#操作excel 打开-读取-修改-保存 winform入门操作

    3. **读取Excel工作表** `ExcelPackage`提供了`Workbooks`属性,可以访问到Excel中的所有工作簿。默认情况下,第一个工作簿是活动的,可以通过`Worksheets`属性访问工作表。例如,读取第一行数据: ```csharp ...

    C# 将Excel表格转成图片并保存源码

    使用NPOI,我们可以读取Excel文件中的工作表。下面的代码展示了如何做到这一点: ```csharp using NPOI.SS.UserModel; using NPOI.XSSF.UserModel; // 加载Excel文件 XSSFWorkbook workbook = new ...

    C#操作Excel

    使用NPOI,你可以创建新的Excel工作簿,添加工作表,插入单元格数据,设置样式,甚至执行一些简单的公式计算。以下是一个创建新Excel文件并写入数据的基本示例: ```csharp using NPOI.HSSF.UserModel; using NPOI....

    C# 操作Excel案例

    使用此组件,你可以创建Excel应用程序实例,打开工作簿,添加工作表,读取单元格值,设置公式,甚至执行宏。例如,你可以通过以下代码创建一个新的Excel工作簿: ```csharp using Excel = Microsoft.Office.Interop...

Global site tag (gtag.js) - Google Analytics