admin 管理员组

文章数量: 1184232


2023年12月23日发(作者:weex交易所最新消息)

vbafind函数的使用方法

打开Excel,按下Alt+F11,进入VBA编辑界面,如下图所示。

可以直接对Range区域使用find方法,如下图所示。

可以看到find方法中有很多参数,但多数都是可选参数,而必选参数只有what,也就是查找值一个,如下图所示。

这里,我们写代码实现在区域A1:A10中查找第一个含有“龙”字的单元格,并显示器行号,关键代码Range("A1:A10").Find("龙").Row,如下图所示。

按下“运行子程序”按钮,就会弹出对话框,提示第一个含有“龙”字单元格的行号,如下图所示。

拓展资料:

Excel VBA中Find函数的基本用法。Find函数就是Excel表格中的查找功能,我们可以通过录制宏的方法来获得Find的代码。

Sub Macro1()

(What:="A", After:=ActiveCell, LookIn:=xlFormulas,

LookAt:= _

xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext,

MatchCase:=False _

, SearchFormat:=False).Activate

xt(After:=ActiveCell).Activate

End Sub

从上面可以看到Find函数共有8个参数,分别对应Excel表格查找里面选项的各个项目,这里我就不多说了,感兴趣可以自己试下,其中只有一个参数是必须的,那就是"What",即你要找的内容。下面我们来看整理之后的代码

Sub Find演示()

Dim rng

Set rng = (What:="A")

'MsgBox "字母A地址为" & s(0, 0)

'MsgBox "字母A所在行为" &

MsgBox "字母A所在列为" &

End Sub

上面的代码我们只用了一个参数What,Find函数查找到的是一个单元格,是range对象,这里我们直接把这个range赋值给了变量rng,那么相应单元格的地址和行、列号就可以如上面代码所示表示出来了。

上面的代码只是查找一个到第一个值,如果我们要查找的范围里面有多个字母A,我们要把所有的A都找出来标上底色,那怎么办呢?看下面的代码

Sub FindAll()

Dim rng, Address1, Address2

Set rng = (What:="A")

Address1 = s(0, 0)

Do Until Address1 = Address2

Set rng = xt(rng)

Address2 = s(0, 0)

ndex = 6

Loop

End Sub

上面的代码中查找第一个时我们用了Find函数,并将第一个符合条件的单元格地址放在了变量Address1中,然后利用函数FindNext,其只有一个参数After,代表从这个参数往后查,所以FindNext(rng)就是查找下一个了,不断的找,当又找到第一个位置的时候Address1和Address2就相同了,也就表示整个范围都找了一遍了,这时就可以退出循环了。


本文标签: 代码 函数 参数 查找