篆体字作品 | 篆体字知识 | 加入收藏 篆体字转换器软件可转换多种篆体字在线预览 网页版 V2.0
篆体字转换器

当前位置:篆体字网 > 知识库 >

findnext

时间:2024-01-05 18:44:20 编辑:篆字君 来源:篆体字网

在工作表中我们经常用查找功能,在一列中查找某个内容,查找下一个,那在VBA中我们该如何进行查找呢?

我们看个实例:

上图中我们希望通过输入班级,点击筛选就能出来想要的内容,这里我忘了在筛选之前先做个清除,所以筛选二班记录时,三班的记录没有清除。

我们要把某个班级的记录筛选出来,那么就希望首先在对应的列里找到某个班级所在的单元格,这里就用到了find,找到后就把该行复制到对应位置,然后进行查找下一个。

上图中代码如下:

Sub 筛选()

Dim rng1, rng2, rng3 As Range, addr$, adr$

Set rng1=Range('a:a').Find(Range('e6').Value)

addr=rng1.Address

Do

Set rng1=Range('a:a').FindNext(rng1)

adr=rng1.Address

Set rng2=Cells(Rows.Count, 'e').End(xlUp)(2, 1)

Set rng3=rng1.EntireRow.Range('a1:c1')

rng3.Copy rng2

Loop Until addr=rng1.Address

End Sub

find的语法:

range(某区域).find(某值)

findnext的语法:

Range(某区域).FindNext(find的结果)

使用findnext要先使用find找到第一个结果,然后在用findnext找到下一个结果。

基本用法清楚以后,给大家留到练习题:

批量删除特定的行,效果做成如下:

今天的分享就到这里,VBA不动手是学不会的,所以一定要动手写。

Copyright:2021-2023 篆体字转换器 www.dddtedu.com All rights reserved.