vbafind方法详细说明(vbafind函数)
vba用find查找指定值并返回
FindNext方法对应于“查找与替换”对话框中的“查找下一个”按钮。可以使用该方法继续执行查找,查找下一个与Find方法中所指定条件的数据相匹配的单元格,返回代表该单元格的Range对象。在使用该方法时,不影响选定区域或活动单元格。
Find方法将在指定的单元格区域中查找包含参数指定数据的单元格,若找到符合条件的数据,则返回包含该数据的单元格;若未发现相匹配的数据,则返回Nothing。该方法返回一个Range对象,在使用该方法时,不影响选定区域或活动单元格。
vba中 find函数每个参数的详细解释
单元格区域,必须指定,返回一个Range对象。
参数What,必需指定。代表所要查找的数据,可以为字符串、整数或者其它任何数据类型的数据。对应于“查找与替换”对话框中,“查找内容”文本框中的内容。
参数After,可选。指定开始查找的位置,即从该位置所在的单元格之后向后或之前向前开始查找(也就是说,开始时不查找该位置所在的单元格,直到Find方法绕回到该单元格时,才对其内容进行查找)。所指定的位置必须是单元格区域中的单个单元格,如果未指定本参数,则将从单元格区域的左上角的单元格之后开始进行查找。
参数LookIn,可选。指定查找的范围类型,可以为以下常量之一:xlValues、xlFormulas或者xlComments,默认值为xlFormulas。对应于“查找与替换”对话框中,“查找范围”下拉框中的选项。
参数LookAt,可选。可以为以下常量之一:XlWhole或者xlPart,用来指定所查找的数据是与单元格内容完全匹配还是部分匹配,默认值为xlPart。对应于“查找与替换”对话框中,“单元格匹配”复选框。
参数SearchOrder,可选。用来确定如何在单元格区域中进行查找,是以行的方式(xlByRows)查找,还是以列的方式(xlByColumns)查找,默认值为xlByRows。
拓展资料:
Find函数用来对原始数据中某个字符串进行定位,以确定其位置。Find函数进行定位时,总是从指定位置开始,返回找到的第一个匹配字符串的位置,而不管其后是否还有相匹配的字符串。
中文名
find函数
外文名
foundion
语????法
find_text
使用语法
FIND(find_text,within_text,start_num)
Find_text 是要查找的字符串。
Within_text 是包含要查找关键字的单元格。就是说要在这个单元格内查找关键字
Start_num 指定开始进行查找的字符数。比如Start_num为1,则从单元格内第一个字符开始查找关键字。如果忽略 start_num,则假设其为 1。
注意
使用 start_num 可跳过指定数目的字符。例如,假定使用文本字符串“AYF0093.YoungMensApparel”,如果要查找文本字符串中说明部分的第一个“Y”的编号,则可将 start_num 设置为 8,这样就不会查找文本的序列号部分。FIND 将从第 8 个字符开始查找,而在下一个字符处即可找到 find_text,于是返回编号 9。FIND 总是从 within_text 的起始处返回字符编号,如果 start_num 大于 1,也会对跳过的字符进行计数。
如果 find_text 是空文本 (),则 FIND 则会返回数值1。
Find_text 中不能包含通配符。
如果 within_text 中没有 find_text,则 FIND返回错误值?#VALUE!。
如果 start_num 不大于 0,则 FIND返回错误值 #VALUE!。
如果 start_num 大于 within_text 的长度,则 FIND 返回错误值 #VALUE!。
参考资料:百度百科:find函数
vba如何设置根据输入的内容查找数据位置
vba设置根据输入的内容查找数据位置的方法如下:
查找用Range对象的Find方法,返回Rang对象,然后再取Range对象的Row属性或Column属性返回行或列;
要注意的是Find方法可能会返回Nothing,要先检查一下,否则后出错;
例如SetC=Range("A1:E10").Find("abc")If Not C Is Nothing thenR=C.Row '返回行,Cl=C.Column '返回列end if,或者:Set C=Range("A1:E10").Find("abc")If Not C Is Nothing then,C.SelectR=Selection.Row '返回行Cl=Selection。
VBA如何在整列中进行FIND
VBA在整列中进行FIND的方法如下:
在工作表中查找特定信息。
expression.Find(Arg1, Arg2, Arg3)
expression 必需。该表达式返回一个 WorksheetFunction对象。
Arg1 String 类型,必需。工作表名称。
Arg2 String 类型,必需。单元格区域名称。
Arg3 Variant 类型,可选。精确限制查询的参数名称。
应用于 Range对象的 Find方法。
在区域中查找特定信息,并返回 Range对象,该对象代表用于查找信息的第一个单元格。如果未发现匹配单元格,就返回 Nothing。本方法不影响选定区域或活动单元格。
VBA是Visual Basic的一种宏语言,是微软开发出来在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。主要能用来扩展Windows的应用程式功能,特别是Microsoft Office软件。也可说是一种应用程式视觉化的Basic 脚本。
Excel vba 要是用find函数查找内容,找不到怎么办?
解决办法如下:
1、首先,打开Excel,创建一个数据表格,接下来以下图为例进行演示,如下图所示,然后进入下一步。
? ?
2、其次,需要调出日期中的月份和数字。将光标移动到单元格“ B2”,然后在菜单栏中单击“公式”,选择文本-find,如下图所示,然后进入下一步。
? ?
3、接着,在弹出窗口中,输入内容,如下图所示,然后进入下一步。
? ?
4、然后,按回车确定以查找与月份对应的数据的位置,如下图所示,然后进入下一步。
? ?
5、随后,将公式向下拖动以将公式填充到其他单元格中。如下图所示,然后进入下一步。
? ?
6、最后,也可以用相同的方法找出号数的位置。如下图所示。这样,问题就解决了。
? ?
求Excel VBA中Find及Findnext的用法
Sub Myfind()
Dim iRange As Range, iFined As Range
Dim iStr, iAddress As String, N As Integer
'以上是定义使用到的变量
Set iRange = Range("A2:A100") '给irange变量赋值为A2:A100区域
iStr = Range("A1").Value '给要查找的字符串变量赋值为A1单元格的值
Set iFined = iRange.Find(iStr, lookat:=xlWhole) '在irange区域内查找等于变量istr的单元格,并赋值给你ifined变量,如果要查找包含istr变量的单元格,更改参数lookat:=xlPart
If iFined Is Nothing Then '判断 ifined变量是空
MsgBox "在" iRange.Address(0, 0) "区域里,没有找到内容等于" iStr "的单元格!"
Exit Sub
Else
iAddress = iFined.Address(0, 0)
Do
N = N + 1
Set iFined = iRange.FindNext(iFined) '继续向下查找等于istr变量的单元格
Loop While Not iFined Is Nothing And iAddress iFined.Address(0, 0) 'do循环的条件为ifined变量非空,并且ifined变量的单元格地址不等于找到的第一个单元格地址
End If
MsgBox "在" iRange.Address(0, 0) "区域里,共找到内容等于" iStr "的单元格有:" N "个!"
End Sub