VBA学习方法3.2.4:VBA中的查找操作

【分享成果,随喜正能量】一旦被欲望的毒箭射中,心会变得麻木,失去觉知,甚至疯狂。如果没有及时清醒,就会如同爱美的飞蛾扑向火焰、贪吃的鱼儿被鱼钩钓起,当发现自己身处险境时,后悔也来不及了。。

我给VBA的定义:VBA是个人小型自动化处理的有效工具。利用好了,可以大大提高自己的劳动效率,而且可以提高数据处理的准确度。我推出的VBA系列教程共九套和一部VBA汉英手册,现在已经全部完成,希望大家利用、学习。

如果您只是一般的职场VBA需求,可以打包选择7.1.3.9教程+汉英手册,第7套教程是入门,第1套教程是入门后的提高,第3套教程字典是必备的VBA之精华,第9套教程是实用的典型案例讲解。这四套教程内容掌握后足以处理一般工作中的问题,实际写代码的时候再辅助代码汉英手册,足矣!如果您想进一步提高,就需要选择高级阶段的教程了。

VBA是面向对象编程的语言,博大精深。很多朋友咨询VBA的学习方法,我会陆续给大家讲解一些我的经验,大家可以慢慢体会。今日的内容是:3.2.4:VBA中的查找操作

3.2.4 VBA中的查找

我们平时在利用EXCEL工作表处理一般工作时,查找是非常普通的,一般可以用ctrl+f 或者在工作表中由lookup来解决,在VBA中我们处理查找也是一个非常重要的课题,一般情况下我给出五种思路:

思路1:利用循环,判断字符是否匹配。

思路2:利用FIND方法

思路3:利用工作表函数"vlookup"

思路4:利用字典

思路5:数据库方案

在第一个思路中,就是利用基本的循环判断操作,在查找的目标区域中,利用循环遍历来判断单元格值是否与要查找的字符相同,从而完成查找的过程。

第二个思路是我们这套教程重点推荐的,就是利用FIND方法。在学习的时候我们要注意虽然我在教程中给出了标准的语法结构:

expression.Find(What, After, LookIn, LookAt, SearchOrder, SearchDirection, MatchCase, MatchByte, SerchFormat)

但是在实际应用中我们往往是不必要这么多的参数都利用的,只是利用必要的参数即可。在这个语法结构中只有两个值是必须的,一个是:expression是必需的,该表达式返回一个Range对象;一个是:What是必需的,要搜索的数据,可为字符串或任意数据类型。

第三个思路是利用工作表函数,这个方案虽然是我们玩VBA不推荐的,但我们也要理解和学会如何应用,在教程的第十三讲,会有详细的介绍:

第四个思路是最为经典的应用,字典的内容是VBA的精华,在我的第三套教程《VBA数组与字典解决方案》中会有讲解。

我的教程学习顺序是7,1(或4),3,2,6,5。第七套《VBA之Excel应用》是我们对VBA基本的讲解;第一套《VBA代码解决方案》是第七套《VBA之Excel应用》的应用提高;第三套《VBA数组与字典解决方案》是VBA应用的专题讲解,这套教程中讲解的专题是数组和字典,大家会在这套教程中看到非常全面的数组与字典的应用;第二套《VBA数据库解决方案》也是VBA应用的专题讲解,这套教程中讲解的专题是数据库,大家会在这套教程中看到VBA连接excel与accdb的全面应用;第六套《VBA信息获取与处理》是整个VBA应用的提高;第五套《VBA中类的解读及应用》是VBA的最高理论"类""接口技术"的讲解。

所以第五个思路同样我们可以参考我的第二套教程,我们到时候再讲解学习方法。

在这套《VBA代码解决方案》中我们必须要掌握的查找是FIND方法,几个知识点包括Find,FindNext,FindPrevious ; Like运算符以及Replace方法,这都属于这套教程中的必须熟练掌握的知识点。

学到这里,我们不妨再看看自己对入门阶段自测题的答案,或者自己在做自测题时没有答出,这个时候可以再写一遍代码。

我20多年的VBA实践经验,全部浓缩在下面的各个教程中:

相关推荐
傻乐u兔10 小时前
C语言进阶————指针4
c语言·开发语言
大模型玩家七七10 小时前
基于语义切分 vs 基于结构切分的实际差异
java·开发语言·数据库·安全·batch
历程里程碑10 小时前
Linux22 文件系统
linux·运维·c语言·开发语言·数据结构·c++·算法
牛奔11 小时前
Go 如何避免频繁抢占?
开发语言·后端·golang
寻星探路15 小时前
【深度长文】万字攻克网络原理:从 HTTP 报文解构到 HTTPS 终极加密逻辑
java·开发语言·网络·python·http·ai·https
lly20240616 小时前
Bootstrap 警告框
开发语言
2601_9491465317 小时前
C语言语音通知接口接入教程:如何使用C语言直接调用语音预警API
c语言·开发语言
曹牧17 小时前
Spring Boot:如何测试Java Controller中的POST请求?
java·开发语言
KYGALYX17 小时前
服务异步通信
开发语言·后端·微服务·ruby
zmzb010317 小时前
C++课后习题训练记录Day98
开发语言·c++