镇江网站建设制作公司,网站建设与网页设计报告,wordpress怎么显示翻页符号,湖南众诚建设网站我给VBA的定义#xff1a;VBA是个人小型自动化处理的有效工具。利用好了#xff0c;可以大大提高自己的劳动效率#xff0c;而且可以提高数据处理的准确度。我推出的VBA系列教程共九套和一部VBA汉英手册#xff0c;现在已经全部完成#xff0c;希望大家利用、学习。
如果…我给VBA的定义VBA是个人小型自动化处理的有效工具。利用好了可以大大提高自己的劳动效率而且可以提高数据处理的准确度。我推出的VBA系列教程共九套和一部VBA汉英手册现在已经全部完成希望大家利用、学习。
如果您只是一般的职场VBA需求可以打包选择7.1.3.9教程汉英手册第7套教程是入门第1套教程是入门后的提高第3套教程字典是必备的VBA之精华第9套教程是实用的典型案例讲解。这四套教程内容掌握后足以处理一般工作中的问题实际写代码的时候再辅助代码汉英手册足矣如果您想进一步提高就需要选择高级阶段的教程了。
VBA是面向对象编程的语言博大精深。很多朋友咨询VBA的学习方法我会陆续给大家讲解一些我的经验大家可以慢慢体会。今日的内容是如何学习VBA:3.3.4从初学到精进的方法
【分享成果随喜正能量】171 说到得失不管是得是失都各有因缘。是我的不必力争自会得到不是你的即使千方百计取得也会随风而逝。如果你想获得安宁与自由那么让脚步去追随心的方向。
3.3.4 从初学到精进的方法
就VBA的特点而言一位合格的管理人员特别是现场管理人员VBA是必备的知识和技能。一位中级及以上管理工作者如果你不懂VBA在某种程度上讲你是不合格的因为你没有办法从大量的数据中理顺出自己的思路并根据自己的思路把数据和产品做有效的连接。你只能接受其他人提供给你的资料还无法判断数据来源的可靠性。上述观点也是我二十多年来职场生涯的一点体会。
3.3.4.1 数据的重要性 “数据”是管理最基本的参考资料要从各式各样的数据中提取出自己关注的部分这是对于管理者必备的基本功如何提取这些数据有着各种办法以我的经验最为灵活和实用的要首选“VBA”。很多年轻人步入职场如果不想混日子如果想在自己的事业上有所突破VBA确实是能尽快提高自己能力的一种有效的手段其中的道理不再多说你懂得。
“VBA代码解决方案”系列资料结集以来和大量的朋友进行了交流很多人都在说“我是新手如何学习VBA”,其实每个人都有新手的经历在我的教程中我会把我学习VBA的历程与大家分享把好的经验提供给大家。
我初学VBA时基本上还没有像样的书籍可以参考。能看到的只是前辈留下的代码其中一个是复杂实例可以实现上万种商品从库存到订单的匹配。那时看着各种表格飞速地运转我总是去琢磨驱动运算的后台是什么样子呢再后来看的多了用的多了自己也就窥视了其中的奥秘。这位前辈现在已经做到了东软的副总是非常成功的人士。当然个人事业的发展和多种因素有关系我们只谈VBA。
3.3.4.2 初学之路的方法和实战
对于初学者我提到过要弄懂每一块积木。我的每一讲可以单独地解决一类问题在讲解中我也尽可能地深入把需要的知识点讲透彻这给初学者带来了很大的方便。记得我在学习初期的时候为了弄懂with的含义就花费了很大的气力。所以为了避免朋友们如我初学时的困惑我在每一讲的讲解时会照顾到方方面面。我在创作这系列的文章时定位的是广大职场人员让这类人受益。要注意在学习时要结合实际问题动手去解决。在“VBA代码解决方案”一书的实例中很多是工作中经常遇到的例子我特意写出来给大家参考。可以结合自己感兴趣的章节先弄懂代码的含义然后再扩展其他的章节。要循序渐进不可贪多。每个知识点都是要理解。学以致用希望大家能有所结合的去学习学习的目的是应用不要为学习而学习。
下面我就一个实例给大家分析查找是我们工作中经常用到的但用VLOOKUP确实不方便怎么办打开我的VBA代码解决方案第一册目录中第七讲
我们拷贝出代码并加以整理一下为了大家理解我做注释了这也是大家要掌握的内容
Sub myFindNext() Dim StrFind As String 声明变量利用StrFind作为要查找的值 Dim Rng As Range Dim FindAddress As String 声明变量利用FindAddress作为要查找的值的地址 StrFind InputBox(请输入要查找的值:) If Trim(StrFind) Then 如果输入的值不为空才去查找 With Sheet1.Range(A:A) 给出的范围 进行查找的的设置 Set Rng .Find(What:StrFind, _ After:.Cells(.Cells.Count), _ LookIn:xlValues, _ LookAt:xlWhole, _ SearchOrder:xlByRows, _ SearchDirection:xlNext, _ MatchCase:False) If Not Rng Is Nothing Then 如果不为空记录下查到值的位置 FindAddress Rng.Address Do Rng.Interior.ColorIndex 6 将查到的单元格颜色自定义 Set Rng .FindNext(Rng) 再次查找 Loop While Not Rng Is Nothing And Rng.Address FindAddress 一直循环到刚才记录下的位置 End If End With End If
End Sub
把上述代码拷贝到VBE中如截图 运行 好了这节的内容就可以说是大体掌握了但还没有完。
3.3.4.3 要在原代码的基础上活用
有了上述代码后我要解决的不是反馈出颜色的变化而是内容如下需求A和B列有型号和数量值E列有型号要根据E列的型号求出数量的合计。 这时的代码该怎么写呢这就要把上面的代码重新组织一下了。如下
Sub mynzFindNext() Dim StrFind As String 声明变量利用StrFind作为要查找的值 Dim Rng As Range Dim FindAddress As String 声明变量利用FindAddress作为要查找的值的地址 i 2 设置一个变量记录行数但我没有声明 With Sheet1.Range(A:A) 给出的范围 Do While Cells(i, 5) StrFind Cells(i, 5) 这时的查找值就是Cells(i, 5)的数据了 Cells(i, 6) 要记录数据的单元格清空 Set Rng Nothing 进行查找的的设置 Set Rng .Find(What:StrFind, _ After:.Cells(.Cells.Count), _ LookIn:xlValues, _ LookAt:xlWhole, _ SearchOrder:xlByRows, _ SearchDirection:xlNext, _ MatchCase:False) If Not Rng Is Nothing Then 如果不为空记录下查到值的位置 FindAddress Rng.Address Do Cells(i, 6) Cells(i, 6) Cells(Rng.Row, 2) 在Cells(i, 6)中求和找到的数据 Set Rng .FindNext(Rng) 再次查找 Loop While Not Rng Is Nothing And Rng.Address FindAddress 一直循环到刚才记录下的位置 End If i i 1 Loop End With
End Sub
代码截图 再看运行的截图 完成了上述的洗礼那么你就可以说是较为全面地掌握了这个查找的方法同时你也获得了一块新的积木把它保存起来可以随时的利用。 我20多年的VBA实践经验全部浓缩在下面的各个教程中