半岛权威十大直营(官方)网站

国产Excel处理控件Spire.XLS系列教程:如何使用 C# 编辑 Excel 文档

翻译|使用教程|编辑:吉炜炜|2025-05-06 13:50:28.470|阅读 30 次

概述:通过编程方式管理和操作 Excel 文件已成为开发者的必备技能。Spire.XLS for .NET 正是这样一款多功能且强大的库,它能让您使用 C# 无缝地创建、读取、写入和编辑 Excel 文件。

# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>

相关链接:

在当今数字化时代,通过编程方式管理和操作 Excel 文件已成为开发者的必备技能。无论您是在构建报表工具、自动化数据处理,还是通过动态数据处理增强应用程序功能,拥有一个强大的库可以带来显著不同。Spire.XLS for .NET 正是这样一款多功能且强大的库,它能让您使用 C# 无缝地创建读取写入编辑 Excel 文件。

Spire.XLS for .NET试用下载

 本文将从以下几个方面展示如何利用 C# 和 Spire.XLS for .NET 轻松编辑 Excel 文档。

  • 读写 Excel 文件
  • 为 Excel 单元格设置样式
  • 查找和替换 Excel 文本
  • 向 Excel 添加公式和图表

安装 Spire.XLS for .NET

首先,您需要添加 Spire.XLS for .NET 包中包含的 DLL 文件作为 .NET 项目中的引用。DLL 文件可以从 此链接或通过  安装。


PM> Install-Package Spire.XLS

读写 Excel 文件

在使用C#操作Excel文件时,最常见的任务之一就是读取和写入数据。Spire.XLS for .NET 提供了 CellRange.Value 属性,使开发者能够轻松获取或设置单个单元格的值。

以下是使用 C# 读写 Excel 文件的步骤:

using Spire.Xls;

namespace ReadAndWriteExcel
{
    class Program
    {
        static void Main(string[] args)
        {
            // 创建一个 Workbook 对象
            Workbook workbook = new Workbook();

            // 加载一个 Excel 文件
            workbook.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Input.xlsx");

            // 获取一个特定的工作表
            Worksheet worksheet = workbook.Worksheets[0];

            // 获取一个特定的单元格
            CellRange cell = worksheet.Range["A1"];

            // 读取单元格的值
            String text = cell.Value;

            // 判断单元格的值是否为 "区域"
            if (text == "区域")
            {
                // 更新单元格的值
                cell.Value = "地区";
            }

            // 将工作簿保存到不同的文件
            workbook.SaveToFile("读写Excel.xlsx", ExcelVersion.Version2016);

            // 释放资源
            workbook.Dispose();
        }
    }
}

读写Excel文件

为 Excel 单元格设置样式

样式和格式设置是制作专业 Excel 报表的重要环节。Spire.XLS for .NET 在 CellRange ;类中提供了丰富的 API,可用于管理单元格样式、字体、颜色、对齐方式,以及调整行高和列宽。

以下是设置 Excel 单元格样式与格式的步骤:

using Spire.Xls;
using System.Drawing;

namespace FormatCells
{
    class Program
    {
        static void Main(string[] args)
        {
            // 创建一个 Workbook 对象
            Workbook workbook = new Workbook();

            // 加载一个 Excel 文件
            workbook.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Input.xlsx");

            // 获取一个特定的工作表
            Worksheet worksheet = workbook.Worksheets[0];

            // 获取工作表中的所有已分配范围
            CellRange allocatedRange = worksheet.AllocatedRange;

            // 遍历行
            for (int rowNum = 0; rowNum < allocatedRange.RowCount; rowNum++)
            {
                if(rowNum == 0)
                {
                    // 为标题行应用单元格颜色
                    allocatedRange.Rows[rowNum].Style.Color = Color.Black;

                    // 更改标题行的字体颜色
                    allocatedRange.Rows[rowNum].Style.Font.Color = Color.White;
                }

                // 为其他行应用交替颜色
                else if (rowNum % 2 == 1)
                {
                    allocatedRange.Rows[rowNum].Style.Color = Color.LightGray;
                }
                else if (rowNum % 2 == 0)
                {
                    allocatedRange.Rows[rowNum].Style.Color = Color.White;
                }

                // 将文本居中对齐
                allocatedRange.Rows[rowNum].HorizontalAlignment = HorizontalAlignType.Center;
                allocatedRange.Rows[rowNum].VerticalAlignment = VerticalAlignType.Center;

                // 设置行高
                allocatedRange.Rows[rowNum].RowHeight = 18;
            }

            // 遍历列
            for (int columnNum = 0; columnNum < allocatedRange.ColumnCount; columnNum++)
            {
                // 设置列宽
                if (columnNum > 0)
                {
                    allocatedRange.Columns[columnNum].ColumnWidth = 12;
                }
            }

            // 将工作簿保存到不同的文件
            workbook.SaveToFile("应用格式.xlsx", ExcelVersion.Version2016);

            // 释放资源
            workbook.Dispose();
        }
    }
}

格式化 Excel 表格

查找和替换 Excel 文本

Excel 的查找替换功能既能提升数据准确性和一致性,又能显著提高工作效率。借助 Spire.XLS for .NET,您可以通过 Worksheet.FindString() 方法快速定位包含特定字符串的单元格,再使用 CellRange.Value 属性更新单元格内容。

使用 C# 实现 Excel 文本查找替换的步骤如下:

using Spire.Xls;

namespace FindAndReplaceText
{
    class Program
    {
        static void Main(string[] args)
        {
            // 创建一个 Workbook 对象
            Workbook workbook = new Workbook();

            // 加载一个 Excel 文件
            workbook.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Input.xlsx");

            // 获取一个特定的工作表
            Worksheet worksheet = workbook.Worksheets[0];

            // 定义一个字符串数组用于替换
            String[] new_strings = new String[] { "西部厂区", "东北厂区", "北部厂区", "南部厂区", "中部厂区" };

            // 定义一个字符串数组,在 Excel 表中将被替换
            String[] old_strings = new String[] { "西部", "东部", "北部", "南部", "中部" };

            // 遍历旧字符串
            for (int i = 0; i < old_strings.Length; i++)
            {
                // 查找包含当前旧字符串的单元格
                CellRange cell = worksheet.FindString(old_strings[i], false, false);

                // 用新字符串替换找到的单元格中的文本
                cell.Text = new_strings[i];
            }

            // 将工作簿保存到不同的文件
            workbook.SaveToFile("替换文本.xlsx", ExcelVersion.Version2016);

            // 释放资源
            workbook.Dispose();
        }
    }
}

替换Excel中的文本

向 Excel 添加公式和图表

除了基本的文件操作外,Spire.XLS for .NET 还提供了多种高级功能来处理 Excel 文件。这些技术可用于自动化复杂任务、执行计算以及生成动态报表。

以下是使用 C# 在 Excel 中添加公式和创建图表的步骤:

using Spire.Xls;

namespace AddFormulaAndChart
{
    class Program
    {
        static void Main(string[] args)
        {
            // 创建一个 Workbook 对象
            Workbook workbook = new Workbook();

            // 加载一个 Excel 文件
            workbook.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Input.xlsx");

            // 获取一个特定的工作表
            Worksheet worksheet = workbook.Worksheets[0];

            // 获取所有已分配范围
            CellRange allocatedRange = worksheet.AllocatedRange;

            // 遍历行
            for (int rowNum = 0; rowNum < allocatedRange.RowCount; rowNum++)
            {
                if (rowNum == 0)
                {
                    // 在单元格 F1 中写入文本
                    worksheet.Range[rowNum + 1, 6].Text = "年度";

                    // 为单元格应用样式
                    worksheet.Range[rowNum + 1, 6].Style.Font.IsBold = true;
                    worksheet.Range[rowNum + 1, 6].Style.Font.FontName = "宋体";
                    worksheet.Range[rowNum + 1, 6].Style.Font.Size = 12;
                    worksheet.Range[rowNum + 1, 6].Style.HorizontalAlignment = HorizontalAlignType.Center;
                }
                else
                {
                    // 为单元格 F2 到 F6 添加公式
                    worksheet.Range[rowNum + 1, 6].Formula = $"=SUM(B{rowNum + 1}:E{rowNum + 1})";

                    // 为单元格应用样式
                    worksheet.Range[rowNum + 1, 6].Style.Font.FontName = "Times New Roman";
                    worksheet.Range[rowNum + 1, 6].Style.Font.Size = 12;
                    worksheet.Range[rowNum + 1, 6].Style.HorizontalAlignment = HorizontalAlignType.Center;
                }
            }

            // 添加一个聚类柱状图
            Chart chart = worksheet.Charts.Add(ExcelChartType.ColumnClustered);

            // 设置图表的数据范围
            chart.DataRange = worksheet.Range["A1:E6"];
            chart.SeriesDataFromRange = false;

            // 设置图表的位置
            chart.LeftColumn = 1;
            chart.TopRow = 7;
            chart.RightColumn = 7;
            chart.BottomRow = 18;

            // 设置和格式化图表标题
            chart.ChartTitle = "区域季度生产量";
            chart.ChartTitleArea.Size = 13;
            chart.ChartTitleArea.IsBold = true;

            // 将工作簿保存到不同的文件
            workbook.SaveToFile("添加公式和图表.xlsx", ExcelVersion.Version2016);

            // 释放资源
            workbook.Dispose();
        }
    }
}
添加公式和图表到Excel



————————————————————————————————————————

关于慧都科技:

慧都科技是一家行业数字化解决方案公司,长期专注于软件、油气与制造行业。公司基于深入的业务理解与管理洞察,以系统化的业务建模驱动技术落地,帮助企业实现智能化运营与长期竞争优势。在软件工程领域,我们提供开发控件、研发管理、代码开发、部署运维等软件开发全链路所需的产品,提供正版授权采购、技术选型、个性化维保等服务,帮助客户实现技术合规、降本增效与风险可控。慧都科技E-iceblue的官方授权代理商,提供E-iceblue系列产品免费试用,咨询,正版销售等于一体的专业化服务E-iceblue是国产文档处理领域的优秀产品,支持国产化,帮助企业高效构建文档处理的应用程序。

欢迎下载|体验更多E-iceblue产品

获取更多信息请咨询 ;技术交流Q群(125237868



标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@wqylolg.cn

文章转载自:慧都网

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP