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

相关推荐
Boilermaker199217 小时前
[Java 并发编程] Synchronized 锁升级
java·开发语言
MM_MS17 小时前
Halcon变量控制类型、数据类型转换、字符串格式化、元组操作
开发语言·人工智能·深度学习·算法·目标检测·计算机视觉·视觉检测
꧁Q༒ོγ꧂18 小时前
LaTeX 语法入门指南
开发语言·latex
njsgcs18 小时前
ue python二次开发启动教程+ 导入fbx到指定文件夹
开发语言·python·unreal engine·ue
alonewolf_9918 小时前
JDK17新特性全面解析:从语法革新到模块化革命
java·开发语言·jvm·jdk
古城小栈18 小时前
Rust 迭代器产出的引用层数——分水岭
开发语言·rust
ghie909018 小时前
基于MATLAB的TLBO算法优化实现与改进
开发语言·算法·matlab
恋爱绝缘体118 小时前
2020重学C++重构你的C++知识体系
java·开发语言·c++·算法·junit
wuk99818 小时前
VSC优化算法MATLAB实现
开发语言·算法·matlab
AI小怪兽19 小时前
基于YOLOv13的汽车零件分割系统(Python源码+数据集+Pyside6界面)
开发语言·python·yolo·无人机