前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >聊聊我的VBA学习

聊聊我的VBA学习

作者头像
xyj
发布2021-09-10 14:22:49
2.1K4
发布2021-09-10 14:22:49
举报
文章被收录于专栏:VBA 学习

1、走进VBA

11年前,刚工作的我开始接触Excel,我还记得问的同事第一个问题:我写个1,怎么能拉下去的时候变成1、2、3、4、5?

工作过程中,我渐渐发现了Excel的重要,于是决定好好学习下Excel,并在网上查资料,买了一本ExcelHome出版的《2003Excel应用大全》,现在已经是2010版本了:

undefined

好厚的一本书,我是认认真真的看了,碰到不懂的还到ExcelHome网站去看论坛,问问题。

学会了一个又一个的公式,发现在单位好像已经没有人能比我Excel用的好了,自信满满啊。书看的差不多之后,觉得自己好像对Excel已经无所不能了

这本书前面几章讲了Excel的基础应用,中间主要讲的是函数,只有后面的章节提到了VBA。印象中应该是讲了些简单的基础知识,有个MsgBox的程序吧,估计就是这个可视化的交互吸引了我。

于是我对VBA产生了强烈的学习愿望,2012年3月,在网上找VBA方面的书籍,选定了《Excel 2003高级VBA编程宝典》:

undefined

但是当时单位用的是2003版本的office,2003版的这本书已经绝版, 我就在淘宝买了复印的,但这影响不了我的学习热情。

我毕竟没有计算机知识的基础,学习过程中,很多地方根本看不懂,但我就那么照着书本码代码。

就这么照着书本码代码,还是经常一个小程序都会有好几个地方出错,我就这么坚持着把书看完了。还记得书里有个小工具的功能,我很有热情的照着敲下来发到公司内网和人分享。

现在回头想想,虽然我没有计算机知识的基础,但是这种照着书本码代码的学习方法正好非常适合我。看完这本书后,我终于对VBA是有了一定的理解,能够独立的写一些代码了。

就这样,我在工作中不断的应用VBA,也觉得自己的水平在不断的提高。

我又有了觉得自己无所不能的感觉了

!!!

可是使用VBA写程序,除了在Excel用的好之外,似乎其他地方就没什么用了。于是我尝试着去学点其他东西,那时候应该是2014年左右吧,VB6.0自然首先进入了我的视线,不过那时候网上已经有很多声音说VB6.0不行了,所以我也没能坚持多久。

那个时间java好像很火,于是我又找了java的视频想学习学习,可是VB那种可视化的编程严重影响了我。当时看的java的视频是用EditPlus写代码、cmd编译的,我完全适应不了,脑子里总在想MsgBox呢?窗体呢?按钮呢?对着个黑乎乎的cmd命令窗口就是编程?所以这个也没能坚持多久就放弃了!

还好,对VBA的应用和学习还没有停止。

2016年6月,我觉得自己VBA水平还可以了,又想利用下班时候赚点外快,在淘宝找帮人代做Excel的店,并加入了其中一家。在淘宝大概坚持了2年左右的时间,大概做了有500来单吧,当然其中有不少是一些简单函数的,估计有个300来个VBA的吧,代码量应该写了有个5万行代码了吧。加上自己在工作中写的代码,到了这个时间,不管有用没用的代码,从量上来说,应该超过了10万行了吧。

不知道从什么时候开始,我逐渐感觉自己写的程序基本是一气呵成(虽然没什么复杂的),而且连错误也很少出现了。这应该就是熟能生巧了,由此我也渐渐觉得自己水平越发精纯了(

其实是不知天高地厚)。

2、走出VBA

在淘宝用Excel VBA卖苦力的这个期间,还尝试去学习了一下C语言,终究还是没能摆脱VB的那种可视化编程,C语言坚持了一段时间后也放弃了。但这次C语言的学习,还是让自己对编程有了一些新的认识。

他山之石可以攻玉,这句话说的是非常有道理的。

虽然其他语言我没能坚持学习下去,但是通过接触其他语言,我也发现了VBA的很多做到“太好”的地方,那就是太照顾没有编程基础的人,很多底层的原理都被掩盖了,入门VBA很容易,但想真正学好,写出逻辑性好,性能又好的程序是不容易的。

发现这个问题后,我就去找数据结构与算法方面的书,专业程序员都是推荐学习《算法导论》,我这个没有计算机基础的人看这本书还是很困难的,后来找到一本《大话数据结构》:

undefined

这本书将那些晦涩难懂的数据结构、算法用一种比较诙谐的语句写出来,比较好理解。看完这本书,虽然里面没有任何VBA方面的东西,但是我觉得对写VBA程序帮助非常的大,至少个人认为自从对数据结构和算法有了一定了解后,写出来的VBA程序与之前相比,有了质的变化。

3、VBA的学习方法

个人觉得,公众号是利用一些碎片时间学习,要想真正好好学习vba,还是建议买书籍全面系统的看。

首先可以去看看,Excel函数、基本操作,这个可以锻炼逻辑思维,函数都是实现好的一些算法。

像公式里的Lookup的二分查找法,其实就是二分查找算法,数组公式与vba里的数组理解上也可以完全一致。

然后再去看看专门讲解VBA的书籍,期间混合着看一些数据结构和算法的东西。

最后,最重要的,那就是一定要有目的的去学习,也就是说学的要用得上,如果工作上根本不用Excel,那么想有足够的动力去学习,个人认为是非常非常的困难的!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-08-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 VBA 学习 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 2、走出VBA
  • 3、VBA的学习方法
相关产品与服务
云开发 CloudBase
云开发(Tencent CloudBase,TCB)是腾讯云提供的云原生一体化开发环境和工具平台,为200万+企业和开发者提供高可用、自动弹性扩缩的后端云服务,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用等),避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档