NamedRange.Find 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
在 NamedRange 控件中查找特定的信息,然后返回一个 Range 对象,该对象表示在其中找到此信息的第一个单元格。
public Microsoft.Office.Interop.Excel.Range Find (object What, object After, object LookIn, object LookAt, object SearchOrder, Microsoft.Office.Interop.Excel.XlSearchDirection SearchDirection = Microsoft.Office.Interop.Excel.XlSearchDirection.xlNext, object MatchCase, object MatchByte, object SearchFormat);
abstract member Find : obj * obj * obj * obj * obj * Microsoft.Office.Interop.Excel.XlSearchDirection * obj * obj * obj -> Microsoft.Office.Interop.Excel.Range
Public Function Find (What As Object, Optional After As Object, Optional LookIn As Object, Optional LookAt As Object, Optional SearchOrder As Object, Optional SearchDirection As XlSearchDirection = Microsoft.Office.Interop.Excel.XlSearchDirection.xlNext, Optional MatchCase As Object, Optional MatchByte As Object, Optional SearchFormat As Object) As Range
参数
- What
- Object
要搜索的数据。 可以是字符串或任何 Microsoft Office Excel 数据类型。
- After
- Object
从其后开始搜索的单元格。 此单元格就是从用户界面执行的搜索完成后处于活动状态的单元格。 请注意, After
必须是区域中的单个单元格。 请记住,搜索将从该单元格之后开始;只有方法绕回到指定的单元格之后,才会搜索该单元格。 如果您未指定此参数,则从该范围左上角中的单元格之后开始搜索。
- LookIn
- Object
信息的类型。
- SearchOrder
- Object
可以是下列 XlSearchOrder 值之一:xlByRows 或 xlByColumns。
- SearchDirection
- XlSearchDirection
搜索方向。可以是以下 XlSearchDirection 值之一: xlNext 或 xlPrevious。
- MatchCase
- Object
如果在搜索时区分大小写,则为 true
。 默认值为 false
。
- MatchByte
- Object
仅当已选择或安装双字节语言支持时,才会用到此参数。 如果让双字节字符仅与双字节字符相匹配,则为 true
;如果让双字节字符与其单字节等效字符相匹配,则为 false
。
- SearchFormat
- Object
搜索格式。
返回
一个 Range 对象,表示在其中找到该信息的第一个单元格。
示例
下面的代码示例使用 Find 方法查找 控件中具有 值 Seashell
的第一个 NamedRange 单元格。 然后, FindNext 该示例使用 和 FindPrevious 方法查找具有 值的 Seashell
下一个单元格,然后返回到原始单元格。 最后,该示例使用 Cut 方法剪切具有 值 Seashell
的第一个单元格的内容,并将其粘贴到单元格 B1 中。
此示例适用于文档级自定义项。
private void FindValue()
{
this.Range["A1"].Value2 = "Barnacle";
this.Range["A2"].Value2 = "Seashell";
this.Range["A3"].Value2 = "Star Fish";
this.Range["A4"].Value2 = "Seashell";
this.Range["A5"].Value2 = "Clam Shell";
Microsoft.Office.Tools.Excel.NamedRange namedRange1 =
this.Controls.AddNamedRange(this.Range["A1", "A5"],
"namedRange1");
// Find the first occurrence of "Seashell".
Excel.Range Range1 = namedRange1.Find("Seashell",
Excel.XlLookAt.xlWhole, Excel.XlSearchOrder.xlByColumns,
Microsoft.Office.Interop.Excel.XlSearchDirection.xlNext,
false);
// Find the next occurrence of "Seashell".
Range1 = namedRange1.FindNext(Range1);
// Return to the first occurrence of "Seashell".
Range1 = namedRange1.FindPrevious(Range1);
// Cut the range with the first "Seashell" and copy it to cell B1.
Microsoft.Office.Tools.Excel.NamedRange namedRange2 =
this.Controls.AddNamedRange(Range1, "namedRange2");
namedRange2.Cut(this.Range["B1"]);
}
Private Sub FindValue()
Me.Range("A1").Value2 = "Barnacle"
Me.Range("A2").Value2 = "Seashell"
Me.Range("A3").Value2 = "Star Fish"
Me.Range("A4").Value2 = "Seashell"
Me.Range("A5").Value2 = "Clam Shell"
Dim namedRange1 As Microsoft.Office.Tools.Excel.NamedRange _
= Me.Controls.AddNamedRange(Me.Range("A1", "A5"), _
"namedRange1")
' Find the first occurrence of "Seashell".
Dim Range1 As Excel.Range = namedRange1.Find("Seashell", , , _
Excel.XlLookAt.xlWhole, Excel.XlSearchOrder.xlByColumns, _
Microsoft.Office.Interop.Excel.XlSearchDirection.xlNext, _
False, False, )
' Find the next occurrence of "Seashell".
Range1 = namedRange1.FindNext(Range1)
' Return to the first occurrence of "Seashell".
Range1 = namedRange1.FindPrevious(Range1)
' Cut the range with the first "Seashell" and copy it to cell B1.
Dim namedRange2 As Microsoft.Office.Tools.Excel.NamedRange _
= Me.Controls.AddNamedRange(Range1, "namedRange2")
namedRange2.Cut(Me.Range("B1"))
End Sub
注解
如果未找到匹配项, null
则此方法返回 。
此方法不会影响所选内容或活动单元格。
每次使用此方法时,都会保存 、LookAt
、 SearchOrder
和 MatchByte
的设置LookIn
。 如果在下次调用 方法时没有为这些参数指定值,则使用保存的值。 设置这些参数将更改“查找”对话框中的设置,如果省略这些参数,则更改“查找”对话框中的设置将更改所使用的已保存值。 若要避免出现问题,请在每次使用此方法时显式设置这些参数。
可以使用 FindNext 和 FindPrevious 方法重复搜索。
当搜索到达指定搜索范围的末尾时,它将环绕到范围的开头。 若要在此环绕发生时停止搜索,请保存第一个找到的单元格的地址,然后针对此保存的地址测试每个连续找到的单元格地址。
可选参数
有关可选参数的信息,请参阅 Office 解决方案中的可选参数。