C# 在excel中查找及替换数据

简介: 在使用Excel处理数据时,有时候工作表内容很多,如果手动地一行一行的找数据很难发现它们在哪个地方。微软Excel给我们提供了一个很强大的数据处理功能-查找和替换,通过这个功能,我们可以快速地找到想要的数据并一次性对一个或多个单元格的数据进行更改或更新。

 

在使用Excel处理数据时,有时候工作表内容很多,如果手动地一行一行的找数据很难发现它们在哪个地方。微软Excel给我们提供了一个很强大的数据处理功能-查找和替换,通过这个功能,我们可以快速地找到想要的数据并一次性对一个或多个单元格的数据进行更改或更新。但对于开发来说,有时我们可能需要通过编程的方式来实现它。这篇文章讲述的是怎样使用C#来实现excel的查找和替换功能。

这是Excel工作表的截图:

                      

我需要上表格中单元格A5和A6的数据Canada替换为British。

详细步骤:

首先,新建一个visual C#控制台项目,添加引用并使用如下命名空间:

using System.Drawing;
using Spire.Xls;

 

步骤1新建一个Workbook类的对象,并加载excel文档。

Workbook workbook = new Workbook();
workbook.LoadFromFile("统计表.xlsx");

  

步骤2获取需要替换文本的工作表,此处是第一个工作表。

Worksheet sheet = workbook.Worksheets[0];

 

步骤3通过调用Worksheet.FindAllString()方法,查找文本Canada并将它们全部替换为British。这里我还设置了高亮色,方便快速地找到替换过的数据。

CellRange[] ranges = sheet.FindAllString("Canada", false, false);
foreach (CellRange range in ranges)
{
    range.Text = "British";
    range.Style.Color = Color.LawnGreen;
}

 

步骤4保存文件并重新打开。

workbook.SaveToFile("替换.xlsx");
System.Diagnostics.Process.Start("替换.xlsx");

 

效果图:

 

 

全部代码:

using System.Drawing;
using Spire.Xls;

namespace Excel查找和替换
{
    class Program
    {
        static void Main(string[] args)
        {
            Workbook workbook = new Workbook();
            workbook.LoadFromFile("统计表.xlsx");

            Worksheet sheet = workbook.Worksheets[0];
            CellRange[] ranges = sheet.FindAllString("Canada", false, false);
            foreach (CellRange range in ranges)
            {
                range.Text = "British";
                range.Style.Color = Color.LawnGreen;
            }

            workbook.SaveToFile("替换.xlsx");
            System.Diagnostics.Process.Start("替换.xlsx");
        }
    }
}

 

在这个项目中,我使用的是免费版Spire.XLS,需要注意的是这个例子中我查找和替换的是string类型的数据,也就是文本,因此使用的是Worksheet.FindAllString()方法。如果要查找和替换数字,改为FindAllNumber()就可以了。

目录
相关文章
|
1月前
|
测试技术 API C#
C#使用Bogus生成测试数据
C#使用Bogus生成测试数据
36 1
|
28天前
|
关系型数据库 MySQL Shell
不通过navicat工具怎么把查询数据导出到excel表中
不通过navicat工具怎么把查询数据导出到excel表中
28 0
|
8天前
|
存储 C# 开发者
枚举与结构体的应用:C#中的数据组织艺术
在C#编程中,枚举(`enum`)和结构体(`struct`)是非常重要的数据类型。枚举用于定义命名常量集合,提高代码可读性;结构体则封装相关数据字段,适合小型数据集。本文从基本概念入手,探讨它们的使用技巧、常见问题及解决方案,帮助开发者更好地利用这些特性构建健壮的应用程序。
20 8
|
11天前
|
数据采集 存储 数据挖掘
使用Python读取Excel数据
本文介绍了如何使用Python的`pandas`库读取和操作Excel文件。首先,需要安装`pandas`和`openpyxl`库。接着,通过`read_excel`函数读取Excel数据,并展示了读取特定工作表、查看数据以及计算平均值等操作。此外,还介绍了选择特定列、筛选数据和数据清洗等常用操作。`pandas`是一个强大且易用的工具,适用于日常数据处理工作。
|
24天前
|
SQL JSON 关系型数据库
n种方式教你用python读写excel等数据文件
n种方式教你用python读写excel等数据文件
|
28天前
|
存储 Java Apache
|
1月前
|
数据可视化 Python
我是如何把python获取到的数据写入Excel的?
我是如何把python获取到的数据写入Excel的?
36 2
|
1月前
|
索引 Python
Python基于Excel多列长度不定的数据怎么绘制折线图?
本文档详述了如何运用Python从CSV格式的Excel文件中读取特定范围的数据,并基于这些数据绘制多条折线图。文件的第一列代表循环增长的时间序列,后续各列包含不同属性的数据。通过指定起始与结束行数,可选取一个完整的时间循环周期内的数据进行绘图。每列数据以不同颜色和线型表示,并且图片长度会根据时间序列的长度动态调整,确保图表清晰易读。最终生成的图表将保存至指定文件夹。
|
1月前
|
关系型数据库 MySQL Windows
MySQL数据导入:MySQL 导入 Excel 文件.md
MySQL数据导入:MySQL 导入 Excel 文件.md
|
1月前
|
数据管理 数据处理 数据库
分享一个导出数据到 Excel 的解决方案
分享一个导出数据到 Excel 的解决方案