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实践经验,全部浓缩在下面的各个教程中:

相关推荐
瓦力wow1 小时前
python 绘制3D平面图
开发语言·python·3d·matplotlib
Yu_Mao_Cat2 小时前
数独求解器3.0 增加latex格式读取
开发语言·python·算法
天若有情6733 小时前
探秘 C++ 计数器类:从基础实现到高级应用
java·开发语言·c++
进击的愤怒3 小时前
GIM发布新版本了 (附rust CLI制作brew bottle流程)
开发语言·后端·rust
x-cmd3 小时前
x-cmd install | cargo-selector:优雅管理 Rust 项目二进制与示例,开发体验升级
开发语言·后端·rust·cargo·示例
春生野草3 小时前
如何用JAVA手写一个Tomcat
java·开发语言·tomcat
幸运黒锦鲤4 小时前
Qt5、C++11 获取wifi列表与wifi连接
开发语言·qt
满怀10154 小时前
【Python中的Socket套接字详解】网络通信的核心基石
开发语言·网络·python·网络编程·socket
学习使我变快乐4 小时前
C++:关联容器set容器,multiset容器
开发语言·c++·算法
pk_xz1234564 小时前
Python程序实现了一个完整的车辆信息查询系统
开发语言·python·opencv