Excel.Range.Find 方法
我正在使用 Excel 互操作对象并尝试通过以下方法查找指定范围内的日期,
Excel.Range rngFind = WS.get_Range(strFromRange, strToRange).Find(strFind, Type.Missing,
Excel.XlFindLookIn.xlFormulas, Excel.XlLookAt.xlPart, Excel.XlSearchOrder.xlByRows,
Excel.XlSearchDirection.xlNext, false, false, false);
但我得到的 rngFind 始终为 null 我的 strFind = "Sep-08" 我尝试使用 Excel.XlFindLookIn.xlFormulas 和 Excel.XlFindLookIn.xlValues
my excel 文件看起来像这样
Sep-08 Oct-08 Nov-08 Dec-08 Jan-09 Feb-09 Mar-09 Apr-09 May-09 Jun-09 Jul-09
,当我单击 Sep-08 单元格时,我在 Excel 的公式字段中得到 9/1/2008
我也尝试过搜索 9/1/2008,但它根据区域设置日期格式因系统而异...
请帮助我。基本上我正在做的是获取查找字符串的单元格地址
I am using Excel interop object and trying to find a date in a specified range by below method
Excel.Range rngFind = WS.get_Range(strFromRange, strToRange).Find(strFind, Type.Missing,
Excel.XlFindLookIn.xlFormulas, Excel.XlLookAt.xlPart, Excel.XlSearchOrder.xlByRows,
Excel.XlSearchDirection.xlNext, false, false, false);
but i get rngFind as null always my strFind = "Sep-08" i tried with both Excel.XlFindLookIn.xlFormulas and Excel.XlFindLookIn.xlValues
my excel file looks like this
Sep-08 Oct-08 Nov-08 Dec-08 Jan-09 Feb-09 Mar-09 Apr-09 May-09 Jun-09 Jul-09
where as wheni click on Sep-08 cell i get 9/1/2008
in the formula field in Excel
i have also tried searching for 9/1/2008 but it varies system by system as per the RegionalSettings Date format...
Please help me. basically i am doing to get the cell address of the finding string
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
使用 Office 2007,Interop 直接从 Visual Studio 生成。我使用以下代码来查找有问题的单元格:
您可以在 如何使用 Visual C# 自动化 Excel 来填充或使用数组获取某个范围内的数据。
Using Office 2007, Interop generated directly from Visual Studio. I used the following code to find the cell in question:
You can find the Microsoft example at How to automate Excel by using Visual C# to fill or to obtain data in a range by using arrays.