F1帮助的内容:Find方法应用于Range对象的Find方法。
在区域中查找特定信息,并返回Range对象,该对象代表用
于查找信息的第一个单元格。如果未发现匹配单元格,就返回
Nothing。本方法不影响选定区域或活动单元格。有关在
VisualBasic中使用Find工作表函数的详细信息,请参阅F1
帮助中在VisualBasic中使用工作表函数。
(What,After,LookIn,LookAt,SearchOrder,
SearchDirection,MatchCa,MatchByte,SerchFormat)
expression必需。该表达式返回一个Range对象。
WhatVariant类型,必需。要搜索的数据。可为字符串或任
意MicrosoftExcel数据类型。AfterVariant类型,可选。
表示搜索过程将从其之后开始进行的单元格。此单元格对应于
从用户界面搜索时的活动单元格位置。值得注意的是,After必
须是区域中的单个单元格。请记住搜索是从该单元格之后开始
的;直到本方法绕回到指定的单元格时,才对其进行搜索。如
果未指定本参数,搜索将从区域的左上角单元格之后开始。
LookInVariant类型,可选。信息类型。LookAtVariant类
型,可选。可为以下XlLookAt常量之一:xlWhole或xlPart。
SearchOrderVariant类型,可选。可为以下XlSearchOrder
常量之一:xlByRows或xlByColumns。
SearchDirectionXlSearchDirection类型,可选。搜索的方
向。
XlSearchDirection可为以下XlSearchDirection常量之一。
xlNext默认值
xlPrevious
MatchCaVariant类型,可选。若为True,则进行区分大
小写的查找。默认值为Fal。
MatchByteVariant类型,可选。仅在选择或安装了双字节
语言支持时使用。若为True,则双字节字符仅匹配双字节字符。
若为Fal,则双字节字符可匹配其等价的单字节字符。
SearchFormatVariant类型,可选。搜索的格式。
说明每次使用本方法后,参数LookIn、LookAt、SearchOrder
和MatchByte的设置将保存。如果下次调用本方法时不指定这些
参数的值,就使用保存的值。设置这些参数将更改“查找和替
换”对话框中的设置,如果您忽略参数,更改“查找和替换”
对话框中的设置将更改使用的保存值。若要避免这种问题的出
现,每次使用该方法时请明确设置这些参数。
可以使用FindNext和FindPrevious方法重复搜索。
当搜索到指定的搜索区域的末尾时,本方法将绕回到区域的开
始继续搜索。发生绕转后,若要停止搜索,请保存第一个找到
的单元格地址,然后依据该保存地址测试每个后续查找到的单
元格地址。
若要进行更为复杂的模式匹配查找,请用ForEach...Next语
句和Like运算符。例如,下列代码在单元格区域A1:C5中搜
索字体名称以“Cour”开始的单元格。当MicrosoftExcel找
到匹配单元格以后,就将其字体改为“TimesNewRoman”。
ForEachcIn[A1:C5]
ke"Cour*"Then
="TimesNewRoman"
EndIf
Next
------------------------------------------------------
--
下面是几个教学示例代码:
SubFind1()'在某列查找
Dimk
k=Range("A:A").Find("A").Row
MsgBoxk
EndSub
SubFind11()'在多列查找
Dimk
k=Range("A:B").Find("BCD").Row
MsgBoxk
EndSub
SubFind2()'查找的起始位置
Dimk
k=Range("A:B").Find("A",AFTER:=Range("A5")).Row
MsgBoxk
EndSub
SubFind3()'在值中查找
Dimk
k=Range("B:B").Find("SE",LookIn:=xlValues).Row
MsgBoxk
EndSub
SubFind31()'在公式中查找
Dimk
k=Range("B:B").Find("C2",LookIn:=xlFormulas).Address
MsgBoxk
EndSub
SubFind32()'在备注中查找
Dimk
k=Range("B:C").Find("AB",LookIn:=xlComments).Address
MsgBoxk
EndSub
SubFind41()'按模糊查找
Dimk
k=Range("B:C").Find("A",LookIn:=xlValues,
LOOKAT:=xlPart).Address
MsgBoxk
EndSub
SubFind42()'匹配查找
Dimk
k=Range("B:C").Find("A",LookIn:=xlValues,
LOOKAT:=xlWhole).Address
MsgBoxk
EndSub
SubFind5()'按先行后列的方式查找
Dimk
k=Range("A:B").Find("AB",LookIn:=xlValues,
LOOKAT:=xlWhole,SEARCHORDER:=xlByRows).Address
MsgBoxk
EndSub
SubFind51()'按先列后行的方式查找
Dimk
k=Range("A:B").Find("AB",LookIn:=xlValues,
LOOKAT:=xlWhole,SEARCHORDER:=xlByColumns).Address
MsgBoxk
EndSub
SubFind6()'查找方向(从后向前)
Dimk
k=Range("A:A").Find("A",,xlValues,xlWhole,
xlByColumns,xlPrevious).Address
MsgBoxk
EndSub
SubFind61()'查找方向(从前向后)
Dimk
k=Range("A:A").Find("A",,xlValues,xlWhole,
xlByColumns,xlNext).Address
MsgBoxk
EndSub
SubFind7()'字母大小写
Dimk
k=Range("a:b").Find("a",,xlValues,xlWhole,
xlByColumns,xlNext,Fal).Address
MsgBoxk
EndSub
Subf7()'查找不到的情况
DimMRGAsRange
SetMRG=Range("A:A").Find("D")
IfMRGIsNothingThen
MsgBox"查找不到字母D"
El
MsgBox"查找成功,单元格地址为:"&s
EndIf
EndSub
Subf8()'二次查找
DimMRGAsRange
SetMRG=Range("A:A").Find("A")
Setmrg1=Range("A:A").FindNext(MRG)
s
EndSub
SubF9()'区域查找
DimMRGAsRange,AAAAsString
SetMRG=Range("A1:F16").Find("A")
AAA=s
Do
SetMRG=Range("A1:F16").FindNext(MRG)
s
s=AAAEndSub
本文发布于:2022-11-23 11:30:19,感谢您对本站的认可!
本文链接:http://www.wtabcd.cn/fanwen/fan/90/5506.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |