— 设置将更改使用的保存值。要避免出现这一问题,每次使用此方法时最好明确设置这些参数。 (2)FindNext方法 FindNext方法继续由Find方法开始的搜索。查找匹配相同条件的下一个单元格,并返回表示该单元格的Range对象。该操作不影响选定内容和活动单元格。其语法格式如下:
表达式.FindNext(After)
参数After指定一个单元格,查找将从该单元格之后开始。此单元格对应于从用户界面搜索时的活动单元格位置。
—
After必须是查找区域中的单个单元格。搜索是从该单元格之后开始的;直到本方法环绕到此单元格时,才检测其内容。如果未指定本参数,查找将从区域的左上角单元格之后开始。
当查找到指定查找区域的末尾时,FindNext方法将环绕至区域的开始继续搜索。发 生环绕后,为停止查找,可保存第一次找到的单元格地址,然后测试下一个查找到的单元格地址是否与其相同。 3.编写代码
―查找‖按钮的VBA代码如下: Sub 查找指定值() Dim result As String, str1 As String, str2 As String Dim c As Range
result = Application.InputBox(prompt:=\请输入要查找的值:\查找\
Type:=2)
If result = \ Application.ScreenUpdating = False Application.DisplayAlerts = False With ActiveSheet.Cells
Set c = .Find(result, , , xlWhole, xlByColumns, xlNext, False) If Not c Is Nothing Then str1 = c.Address Do c.Interior.ColorIndex = 4 '加亮显示 str2 = str2 & c.Address & vbCrLf Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> str1 End If End With MsgBox \查找到指定数据在以下单元格中:\ & str2, vbInformation + vbOKOnly, \查找结果\ Application.ScreenUpdating = True
Application.DisplayAlerts = True End Sub 以上代码首先让用户输入查找的值,接着使用Find方法查找第一个满足条件的单元 格,再使用循环查找当前工作簿中下一个满足条件的单元格,并在循环中对满足条件的单元格设置不同的底纹,以突出显示。
例261 带格式查找
打开本例工作簿如图12-15所示,单击左上角的―查找指定格式‖按钮,单元格A2将被选中,并填上不同的底色。
1.案例说明
图12-15 带格式查找 2.关键技术
本例使用Application对象的FindFormat属性,设置要查找的单元格格式类型的搜
索条件,然后使用Find方法按格式进行查找。 3.编写代码
―查找指定格式‖按钮的VBA代码如下: Sub 查找指定格式() With Application.FindFormat.Font .Name = \宋体\ .FontStyle = \ .Size = 11 End With Cells.Find(what:=\ Selection.Interior.ColorIndex = 4 '加亮显示 End Sub
以上代码首先使用FindFormat属性设置查找的格式条件,接着使用Find方法按格
式查找并激活满足条件的单元格,最后加亮显示激活单元格。
例262 查找上一个/下一个数据
1.案例说明
打开本例工作簿如图12-16所示,单击右上角的―查找‖按钮,将弹出输入查找条件
对话框,在对话框中输入查找条件单击―确定‖按钮,即可在当前工作表中查找满足
相关推荐: