打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
利用VBA,可以大幅提高数据处理的效率,还可以......

VBA是我们工作的工具,如果你现在数据处理,数据分析还在用工作表解决,真的要转变一下自己的思路了。EXCEL外接程序接口设置好了给我们利用VBA,为什么不利用呢?有了VBA,你的工作效率,数据的准确性上都会大大的提高。这么好的工具有什么理由不利用呢?

我经常对朋友们说:有了VBA知识,可以受益终生,可以让你在职场中更加从容,对于自己的发展很有帮助,希望你早日上手,早日学有所成。这真的不是一句空话,当你喝着茶水,或者品着咖啡,看着电脑屏幕在飞速运转,把你之前几小时,甚至几天的工作秒杀在几分钟内,你的之前所有学习VBA的辛劳会一扫而空。这时,你的快乐是建立在自己的付出基础之上,何乐而不为呢?

工作中的很多问题是可以通过VBA代码来解决,比如最近很多朋友在问排重的问题:如何在工作表中限制重复值的录入,我在《VBA代码解决方案》的第51讲给出了解决的方案:

如果您采用了这段代码,结合实际的工作环境,不必再发费大量的时间在工作表中去做排重的工作了。

再比如对于重复数据的删除,我在第24讲给出了如下的解决方案:

这些都是针对实际问题给出的非常好用的解决方案。加以利用,会大幅提高自己的工作效率,而且避免出错。

在你利用了VBA后,收获不仅是效率的提高,还有逻辑思维能力的提高。在《VBA代码解决方案》的第62讲中,有下面的一段短短18行的代码,截图:

上述代码的功能仍是排重,然后将数据写入另外的单元格。

我们分析一下上述过程的运行:

1。当程序第一次运行到Temp = Filter(Arr, Splarr(I)) 是什么状况呢?这个时候是一个错误,为什么是错误呢?因为第一次运行到这句代码的时候arr还没有任何值,是不能称为数组的,是不能匹配Splarr(0)的值的。所以我在代码之前要加上On Error Resume Next,

正是有了这句On Error Resume Next,这时的变量r才增加1,后续的代码中才能将此时的Splarr(0)值放到Arr中,让arr的不为空。

2 当第二次运行到上述Temp = Filter(Arr, Splarr(i))语句又是什么状况呢?这个时候Arr就不为空值了,Splarr(1)的值才有可能在arr中进行匹配,如果能匹配上Temp就会成为非空的数组,让UBound(Temp)>=0。如果没有找到,这时UBound(Temp)=-1。当为-1的时候,由于原数组中没有相应的值,所以将r值将增加1。为了保持已经放到arr中的原数据不变,在数据扩充时使用了Preserve . (我们假设提供的原数组中没有空值)

后续的工作类似于上述的2了。

当上述程序在你的大脑中一步一步的运行时,正是你逻辑思维训练的最佳时候。是在锻炼自己大脑的逻辑思维能力,会让你也不易衰老啊。哈哈

确实,学习VBA会带给你很多,会让你的工作效率和工作质量同以前比大幅的提高,同时也在训练着你的思维能力。可是仍有人在不遗余力的问我:'老师,VBA代码我是刚刚接触,能学会吗?',这是很典型的提问,其实,能否学会在于自己下功夫的程度,世界上没有不劳而获的事情,只要肯下功夫了,肯定会有收获,同时也可以非常肯定的告诉这类朋友:对于VBA而言,学了,总会有所收获;但你不学,是永远不会的。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
在VBA中如何使用动态数组,以及利用动态数组去除重复值的方法
VBA中数组下标的获取方法!
Excel VBA之函数篇-3.19大数据时代必备查找技能 万条数据能奈我何
VBA数组之插入排序算法
Excel VBA 数组应用/核算项目代码组合/VBA代码优化/AI辅助
如何优化EXCEL vba代码?
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服