c# - 在 C# 程序的 excel 工作表中查找确切的字符串
问题描述
我正在使用 c# 程序在我的 excel 表中搜索文本。我有一个名为“MASTER”的excel表,在该表中,B列中有很多文本。我想在B列中查找文本“apple”。这是我的代码:
Excel.Worksheet workSheet;
workSheet = (Excel.Worksheet)xlWorkBook.Worksheets["MASTER"];
string result;
string utterance = "apples";
range1 = workSheet.Columns["B:B"] as Excel.Range;
Excel.Range findRange
findRange = range1.Find(utterance);
result = (string) (range2.Cells[findRange1.Row, 2] as Excel.Range).Value2;
它可以在 B 列中搜索输入话语“apples”。但是,在那一栏中,有很多苹果。“applepie”、“applejam”、“apple”等,上面代码的结果是“applepie”。我认为是因为它只是找到包含“apple”的文本。我的问题是如何让它找到确切的字符串,所以输出将是 B 列的“apple”?
解决方案
Range.Find
还有许多其他参数(请参阅文档),尤其是LookAt
,请参阅下面的演示:
var app = new Excel.Application();
var workbook = app.Workbooks.Open("C:\\Path\\File.xlsx");
var sheet = workbook.Worksheets["MASTER"];
var range = (Excel.Range)sheet.Columns["B:B"];
var result = range.Find("apples", LookAt: Excel.XlLookAt.xlWhole);
var address = result.Address;//cell address
var value = result.Value2;//cell value
//close or do something else
推荐阅读
- javascript - 如何在codemirror中执行go group字符的命令?
- java - 无法理解 lambdas 和 longstream 方法
- r - 将数据框导出为 R 中单个 Excel 文件中的多个工作表
- oracle - 如何编写触发器来执行业务规则?
- python - 我为保存数据框编写了代码,但它工作不正确
- c++ - 2 个派生类的虚函数(十六进制 + 二进制)
- python - 在没有 \ 的情况下清理 JSON 字符串
- javascript - 如何让 Discord.js 机器人为每个用户记录变量
- docker - 容器中的 Go API 不返回任何响应
- jsf - 使用 var 组件动态添加客户端行为