本例子是一个控制台下的程序,用来检查指定的excel文档中是否含有要查找的关键词。
现在添加引用中,添加COM选项卡下的Microsoft Office 11.0 Object Library
using System;
using System.Collections.Generic;
using System.Text;
namespace SearchExcel
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("开始检查test");
object filename = "d://Test.xls";//目标文件地址
object MissingValue = Type.Missing;
string strKeyWord = "Addd"; //指定要搜索的文本,如果有多个,则声明string[]
Excel.Application ep = new Excel.ApplicationClass();
Excel.Workbook ew = ep.Workbooks.Open(filename.ToString(), MissingValue,
MissingValue, MissingValue, MissingValue,
MissingValue, MissingValue, MissingValue,
MissingValue, MissingValue, MissingValue,
MissingValue, MissingValue, MissingValue,
MissingValue);
Excel.Worksheet ews;
int iEWSCnt = ew.Worksheets.Count;
int i = 0;
Excel.Range oRange;
object oText = strKeyWord.Trim().ToUpper();
for (i = 1; i <= iEWSCnt; i++)
{
ews = null;
ews = (Excel.Worksheet)ew.Worksheets[i];
oRange = null;
(Excel.Range)oRange = ((Excel.Range)ews.UsedRange).Find(
oText, MissingValue, MissingValue,
MissingValue, MissingValue, Excel.XlSearchDirection.xlNext,
MissingValue, MissingValue, MissingValue);
if (oRange != null && oRange.Cells.Rows.Count >= 1 && oRange.Cells.Columns.Count >= 1)
{
Console.WriteLine("文档中包含指定的关键字!");
oRange = null;
ews = null;
ew.Close(false, MissingValue, MissingValue);
ep.Quit();
Console.ReadKey();
break;
}
else
{
Console.WriteLine("文档不包含关键字");
Console.ReadKey();
break;
}
}
}
}
}