我给VBA的定义:VBA是个人小型自动化处理的有效工具。利用好了,可以大大提高自己的劳动效率,而且可以提高数据处理的准确度。我推出的VBA系列教程共九套和一部VBA汉英手册,现在已经全部完成,希望大家利用、学习。
如果您只是一般的职场VBA需求,可以打包选择7.1.3.9教程+汉英手册,第7套教程是入门,第1套教程是入门后的提高,第3套教程字典是必备的VBA之精华,第9套教程是实用的典型案例讲解。这四套教程内容掌握后足以处理一般工作中的问题,实际写代码的时候再辅助代码汉英手册,足矣!如果您想进一步提高,就需要选择高级阶段的教程了。
VBA是面向对象编程的语言,博大精深。很多朋友咨询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实践经验,全部浓缩在下面的各个教程中: