在使用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()就可以了。

C# 在excel中查找及替换数据的更多相关文章

  1. 如何在open xml excel 中存储自定义xml数据?

    如何在open xml excel 中存储自定义xml数据? 而且不能放在隐藏的cell单元格内,也不能放在隐藏的sheet内,要类似web网站的Application变量,但还不能是VBA和宏之类的 ...

  2. C# 在word中查找及替换文本

    C# 在word中查找及替换文本 在处理word文档时,很多人都会用到查找和替换功能.尤其是在处理庞大的word文档的时候,Microsoft word的查找替换功能就变得尤为重要,它不仅能让我们轻易 ...

  3. JS实现文本中查找并替换字符

    JS实现文本中查找并替换字符 效果图: 代码如下,复制即可使用: <!DOCTYPE html><html> <head> <style type=" ...

  4. Excel中的一列数据变成文本的一行数据

    Excel中的一列数据变成文本的一行数据 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/

  5. 如何利用excel中的数据源制作数据地图

    关于这个问题,制作数据地图的方法已不新奇,总体来说有这么几类方案: 一类方案:直接在excel里制作 优势:个人小数据量应用较为方便简单 缺点:需要熟悉VBA,且更强大的功能对VBA水平要求较高 1. ...

  6. Excel 之查找与替换

    Excel查找与替换 1,一旦学会查找,替换就简单了. 2,查找下面有一个选项,里面有对查找的范围进行限制 3,你可以选中一个区域,然后再查找,查找只会在你选择的区域里面进行 4,查找只能找特定值,而 ...

  7. [LeetCode] Find And Replace in String 在字符串中查找和替换

    To some string S, we will perform some replacement operations that replace groups of letters with ne ...

  8. 在LoadRunner中查找和替换字符串

    参考<Search & Replace function for LoadRunner>: http://ptfrontline.wordpress.com/2009/03/13/ ...

  9. java通过poi读取excel中的日期类型数据或自定义类型日期

    Java 读取Excel表格日期类型数据的时候,读出来的是这样的  12-十月-2019,而Excel中输入的是 2019/10/12 或 2019-10-12 poi处理excel时,当excel没 ...

随机推荐

  1. pythonchallenge 解谜 Level 6

    第六关地址 http://www.pythonchallenge.com/pc/def/channel.html 和前几关一样,首先看网页源码吧.反正不看也没办法... <html>< ...

  2. oracle--导出、导入blob类型的字段

    blob是oracle中的一个数据类型,保存的是压缩后的二进制形式的大数据. 数据迁移如果涉及到blob字段,都不好处理,因为无法用常规方法进行操作,如:使用select查看该字段,也无法用inser ...

  3. jquery ui 中的插件开发

    1  $.widget() 必须引用 <script src=")" type="text/javascript"></script> ...

  4. IntelliJ添加Emacs编辑器

    Intellij只支持emacs as a external tool: https://www.jetbrains.com/help/idea/2016.2/tutorial-using-emacs ...

  5. .NET跨平台:在Linux Ubuntu上编译coreclr/corefx/dnx(20150617)

    编译时间:北京2015年6月17日上午 操作系统:Ubuntu 14.04.2 LTS Mono版本:Mono JIT compiler version 4.3.0 (master/3445ac5 T ...

  6. Net作业调度(四)—quartz.net持久化和集群

    介绍 在实际使用quartz.net中,持久化能保证实例重启后job不丢失. 集群能均衡服务器压力和解决单点问题. quartz.net在这两方面配置都比较简单. 持久化 quartz.net的持久化 ...

  7. MapReduce剖析笔记之一:从WordCount理解MapReduce的几个阶段

    WordCount是一个入门的MapReduce程序(从src\examples\org\apache\hadoop\examples粘贴过来的): package org.apache.hadoop ...

  8. java中 用telnet 判断服务器远程端口是否开启

    package net.jweb.common.util; import java.io.BufferedReader; import java.io.BufferedWriter; import j ...

  9. 自定义view(二)

    1.View 的绘制 通过继承View 并重写它的onDraw()来完成绘制. onDraw()有一个参数,就是Canvas对象.使用这个Canvas就可以绘制图像了,Canvas canvas = ...

  10. fir.im Weekly - 关于 Log Guru 开源、Xcode 探索和 Android7.0 适配

    本期 fir.im Weekly 整理了最近的一些技术分享,包括关于 Log Guru 开源.Xcode 探索. Android7.0 适配等等 iOS/Android 相关的工具.源码分享和技术文章 ...