excel表格的查找功能
发布网友
发布时间:2022-02-23 18:10
我来回答
共1个回答
热心网友
时间:2022-02-23 19:56
以我的个人经历而言,在BCG做过三年咨询顾问,写了上万行的VBA程序,每个项目一千至几千行程序不等。最后将Excel用成了中控界面,类似EMACS,在Excel可以随意操控全公司的打印机、Word、Powerpoint等等,自动完成各种任务以及数据更新和抓取。依靠VBA,在效率上是一般同事的数倍甚至是高一个量级,你说VBA还是不是办公利器?
不过题主得到的反馈也正常,许多高级程序员确实瞧不上VBA。因为程序员是有鄙视链的:汇编 >C >C++ >Python >Java及C#及PHP(这三者相互撕) >VB >HTML。在这长长的鄙视链中,甚至都没有VBA的位置。
但是Office+VBA是图灵完备的,所以被程序员用来耍酷的各类*语言能实现的大部分功能,VBA都能实现,而且往往是以更高效更快捷的方式,在这里不谈效率和优雅。较之Python等常用语言,VBA各有攻防各有优缺点。Python的优势当然是扩展性强、超越Office环境之后的适用性强、资源丰富以及效率高,而VBA的优点如下:
环境不依赖,只需要打开装机自带的Office,然后按下Alt+F11就自动进入编程和执行环境
上手简单,学习曲线很平缓,甚至可以更简单的通过录制宏来解决写程序的问题,只需要在简单的代码基础上修修补补就可以执行,参考Excel VBA 如何快速学习? - 何明科的回答
与办公环境完美兼容,在Excel/Word/Powerpoint/Outlook/Access之间随便穿梭,比胶水语言还要简单易用
分享性和移植性很强,几乎所有测试通过的程序放到别的机器上也可轻易执行(如果不考虑各种本地文件位置)
基于以上的优劣势对比,VBA仍然是当之无愧的办公利器之王。而且大家不用太在乎手中的工具(VBA还是Python或者其他),核心还是使用工具的人以及人的思考。
下面列举Office+VBA实现的若干功能,真正为职场人士省时省事省力。大部分内容在回答(Excel 到底有多厉害? - 何明科的回答)中已经出现过。不愿意点击过去阅读的,直接看下面的克隆内容。
1、批量修改格式
下图是利用Powerpoint中录制的宏再加上稍微修改的代码(甚至都称不上是改代码,大部分是改参数),将Powerpoint中所有的字体及字号进行统一修改。常做PPT而且需要根据老板的喜好改来改去的同学们,知道这个批处理功能有多么救命。
2、批量完成打印
刚进职场的新人,只要爸爸不是李刚,基本都做过影帝影后(影=印,各种复印打印的体力劳动)。特别是咨询投行服务行业,在大忽悠会议之前之后,花数小时或者整晚来打印数个文件,并不是天方夜谭。而且这件事情是对着同样一堆不断修改的文件,会经常不断重复发生。
我写的第一个VBA程序就是完成对100多张Excel表格的自动打印,因为是第一个VBA程序,所以比较挫,基本上是宏录制之后来改的,没有使用参考书及搜索引擎,全靠F1和自动提示,所以贴出来特别纪念一下。但也让大家清楚VBA上手也多么容易。实现的功能就是将每周都要做一次的100多张表格的按顺序打印让机器自动做一遍,而且需要防卡纸:按下一个“妞”,就慢慢美妙结果的发生。