继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

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

Eiceblue
关注TA
已关注
手记 107
粉丝 9
获赞 48

在日常工作中我们会经常用到Excel表格。这类型的格式文件可以帮助我们统计数据,并即时地提升办公的效率。但随着数据的不断扩大,数据的查询,读取性能就会变得缓慢。这时我们可以将 Excel 工作表拆分为单独的文件来解决此问题。在本文中,你将学习如何通过C#/VB.NET将 Excel 工作表拆分为单独的文件。下面将详细阐述代码操作过程,方法供参考。

使用工具:  Free Spire.XLS for .NET(免费版)

程序环境:
本次测试时,在程序中引入 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\\Administrator\\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\Administrator\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

效果图:

http://img2.sycdn.imooc.com/636375040001918b09230801.jpg

(本文完)





打开App,阅读手记
1人推荐
发表评论
随时随地看视频慕课网APP