通过 C#/VB.NET 代码将 Excel 工作表拆分为单独的文件

 更新时间:2022年09月29日 16:07:11   作者:毛毛雨大人​​​​​​​  
这篇文章主要介绍了通过C#/VB.NET代码将Excel工作表拆分为单独的文件,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下

前言

随着数据的不断扩大,有的数据表的规模会以几何级增长,当数据达到一定规模时,数据的查询,读取性能就会变得缓慢,这时就需要拆分数据表,接下来在文章中将为大家详细介绍您将学习如何通过C#/VB.NET代码将 Excel 工作表拆分为单独的Excel文件。下面是我整理的思路及具体步骤,希望对大家有所帮助。

使用工具

程序环境

本次测试时,在程序中引入 Free Spire.XLS for .NET。可通过以下方法引用Spire.XLS.dll文件:

方法1:将 Free Spire.XLS for .NET 下载到本地,解压,安装。安装完成后,找到安装路径下BIN文件夹中的Spire.XLS.dll。然后在Visual Studio中打开“解决方案资源管理器”,鼠标右键点击“引用”,“添加引用”,将本地路径BIN文件夹下的dll文件添加引用至程序。

方法2:通过 NuGet安装。可通过以下2种方法安装:

  • (1)可以在Visual Studio中打开“解决方案资源管理器”,鼠标右键点击“引用”,“管理NuGet包”,然后搜索“Free Spire.XLS”,点击“安装”。等待程序安装完成。
  • (2)将以下内容复制到PM控制台安装。

Install-Package FreeSpire.XLS -Version 12.7

具体步骤

  • 创建一个Workbook对象。
  • 使用 Workbook.LoadFromFile()方法加载示例 Excel 文件。
  • 声明一个新的 Workbook 变量,用于创建新的 Excel 工作簿。
  • 循环遍历文档中的工作表。
  • 初始化 Workbook 对象,并将源文档的特定工作表的副本添加到其中。
  • 使用 Workbook.SaveToFile()方法将工作簿保存到 Excel 文件。

完整代码

C#

using Spire.Xls;
using System;

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

//加载示例 Excel 文件
wb.LoadFromFile("企业营业数据表.xlsx");

//声明一个新的 Workbook 变量
Workbook newWb;

//声明一个字符串变量
String sheetName;

//指定用于存储生成的 Excel 文件的文件夹路径
String folderPath = "C:\\Users\\Tina\\Desktop\\输出结果\\";

//循环遍历源文件中的工作表
for (int i = 0; i < wb.Worksheets.Count; i++)
{
//初始化Workbook对象
newWb = new Workbook();

//删除默认工作表
newWb.Worksheets.Clear();

//将源文档的特定工作表添加到新工作簿
newWb.Worksheets.AddCopy(wb.Worksheets[i]);

//获取worksheet名称
sheetName = wb.Worksheets[i].Name;

//将新工作簿保存到指定文件夹
newWb.SaveToFile(folderPath + sheetName + ".xlsx", ExcelVersion.Version2013);
}
}
}
}

VB.NET

Imports Spire.Xls

Namespace SplitWorksheets
    Friend Class Program
        Private Shared Sub Main(ByVal args As String())
            '创建Workbook对象
            Dim wb As Workbook = New Workbook()

            '加载示例 Excel 文件
            wb.LoadFromFile("企业营业数据表.xlsx")

            '声明一个新的 Workbook 变量
            Dim newWb As Workbook

            '声明一个字符串变量
            Dim sheetName As String

            '指定用于存储生成的 Excel 文件的文件夹路径
            Dim folderPath = "C:\Users\Tina\Desktop\输出结果\"

            '循环遍历源文件中的工作表
            For i As Integer = 0 To wb.Worksheets.Count - 1

                '初始化Workbook对象
                newWb = New Workbook()

                '删除默认工作表
                newWb.Worksheets.Clear()

                '将源文档的特定工作表添加到新工作簿
                newWb.Worksheets.AddCopy(wb.Worksheets(i))

                '获取worksheet名称
                sheetName = wb.Worksheets(i).Name

                '将新工作簿保存到指定文件夹
                newWb.SaveToFile(folderPath & sheetName & ".xlsx", ExcelVersion.Version2013)
            Next
        End Sub
    End Class
End Namespace

效果图

注意:测试代码中的文件路径为程序Debug路径,仅供参考,文件路径可自定义为其他路径。

到此这篇关于通过 C#/VB.NET 代码将 Excel 工作表拆分为单独的文件的文章就介绍到这了,更多相关C#/VB.NET Excel 工作表拆分内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • C# 获取属性名的方法

    C# 获取属性名的方法

    C# 获取属性名的方法实例,需要的朋友可以参考一下
    2013-03-03
  • 基于WPF编写一个串口转UDP工具

    基于WPF编写一个串口转UDP工具

    串口是设备和上位机通信的常用接口,UDP则是网络通信常用的通信协议,串口和UDP之间的相互转换是非常有意义的。本文就利用WPF编写一个串口转UDP工具,需要的可以参考一下
    2023-04-04
  • c#使用wmi查询usb设备信息示例

    c#使用wmi查询usb设备信息示例

    这篇文章主要介绍了c#使用wmi查询usb设备信息示例,大家参考使用吧
    2014-01-01
  • C#图像对比度调整的方法

    C#图像对比度调整的方法

    这篇文章主要介绍了C#图像对比度调整的方法,涉及C#实现图像对比度操作的相关技巧,需要的朋友可以参考下
    2015-04-04
  • C#集合之集(set)的用法

    C#集合之集(set)的用法

    这篇文章介绍了C#集合之集(set)的用法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-04-04
  • C#基于UDP实现的P2P语音聊天工具

    C#基于UDP实现的P2P语音聊天工具

    这篇文章主要是一个应用,使用udp传送语音和文本等信息。在这个系统中没有服务端和客户端,相互通讯都是直接相互联系的,能够很好的实现效果
    2015-09-09
  • C#队列的简单使用

    C#队列的简单使用

    队列的特性很简答,就是先进先出,一般利用数组来实现,本文就介绍了C#队列的简单使用,文中根据实例编码详细介绍的十分详尽,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • C#生成putty格式的ppk文件

    C#生成putty格式的ppk文件

    这篇文章介绍了C#生成putty格式ppk文件的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • C#使用linq语句查询数组中以特定字符开头元素的方法

    C#使用linq语句查询数组中以特定字符开头元素的方法

    这篇文章主要介绍了C#使用linq语句查询数组中以特定字符开头元素的方法,涉及C#使用linq进行查询的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-04-04
  • C#byte数组与Image的相互转换实例代码

    C#byte数组与Image的相互转换实例代码

    这篇文章主要介绍了C#byte数组与Image的相互转换实例代码的相关资料,需要的朋友可以参考下
    2017-04-04

最新评论