首页 最新文章网站编程正文

工作中为什么有必要学点VBA

imitker 编程 1092 0

space: normal; background-color: rgb(255, 255, 255); font-family: -apple-system-font, system-ui, "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif; letter-spacing: 0.5px; box-sizing: border-box !important; overflow-wrap: break-word !important;">

image.png


01 

写在前面

VBA全称是指visual Basic for applications,它是一个来自Microsoft的事件驱动的编程语言。 基本语法源自VB语言,和微软的office办公套件的内置函数完全兼容,现在它主要用于Microsoft Office应用程序,如Excel,Word和access

从office97开始,vba作为MS的标准内置配置,弥补了excel内在的基本函数不足以支持的复杂计算,提供了一种相对轻量级的、所见即所得的解决方案,涛哥在21世纪初因内部工作需要(统计代码行数记工作量)第一次接触了VBA,并在以后的工作中多次出色的完成相关任务,甚至给涛嫂编的几个小程序大大提升了她们的工作效率,还受到了时任行长的赞许,现在想来还历历在目。

02 

VBA的应用

可能有人会说了,excel有非常丰富的内置函数库,能满足大多数场景的需要,VBA就没必要学了吧,也对也不对,涛哥有个https://mp.weixin.qq.com/mp/appmsgalbum?action=getalbum&album_id=1349938062197080064&__biz=MzUzMzMxMjA3NQ==#wechat_redirect" textvalue="专辑" tab="innerlink" data-linktype="2" style="margin: 0px; padding: 0px; text-decoration-line: none; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); cursor: pointer; max-width: 100%; box-sizing: border-box !important; overflow-wrap: break-word !important;">专辑专门介绍这些常用函数的使用方法,确实,对于简单的场景或者说对于大多数对excel了解不深的人来说,学几个函数觉得老神奇了,但是对于稍微复杂一点的场景就显得无能为力,即使看起来挺简单的场景。


下面我举个例子:某小学的数学老师需要编排一套口算题,大概有50页,每页100道题,内容来源不详,但有一个要求,那就是每页的题不能有重复的,不同的页可以重复。

这个要求不高,看似也不难,如果是你你会怎么做?思考10秒钟……

估计大部分人首先想到的是一页页对比,50页5000道题,工作量可想而知,涛哥也搜肠刮肚的想了挺多方法,最终还是觉得用VBA来实现最快最准确。

下面这40行代码就可以完成任务,它把每页的重复题目标成红色,并统计出共有多少道重复的题目。

image.png

https://mmbiz.qpic.cn/mmbiz_gif/EQQZHIWoBQrqicmMjwiacZuBTvDuFBIyVcicvCJTbSekbuLRicqE3iaxxic3AWVJ2vyTfHL9QWyTrBwMZ2RCCUrJmt3g/640?wx_fmt=gif" data-type="gif" data-w="640" _width="640px" src="/zb_users/upload/2020/06/202006121591913080678391.gif" data-order="0" data-fail="0" style="margin: 0px; padding: 0px; max-width: 100%; box-sizing: border-box !important; word-wrap: break-word !important; height: auto !important; width: 640px !important; visibility: visible !important;" alt="model.gif" title="model.gif"/>

03 

找门儿VBA

打开VBA窗口的方法有三种,一种是在菜单中调出;第二种方法是在sheet页点击鼠标右键调出;第三种方法是通过快捷键ALT+F11调出。


image.png

VBA窗口

image.png

03 

敲门儿VBA

几个常用术语:

模块

是编写代码的区域。可通过插入模块的方式创建,插入模块完成之后,就可以在模块中编写VBA代码,代码写在一个过程(Sub)中。一个过程/子过程是一系列的VBA语句,指示要做什么工作。

hong.gif


程序/过程

程序(也叫作过程)是作为一个整体执行的一组语句,它指示Excel如何执行特定的任务。执行的任务可能是一个非常简单或非常复杂的任务。不过,把复杂的程序分解成小的程序是一个很好的做法。

程序的两种主要类型,它们分别是:子程序(Sub)和函数(Function),下面就是其中的一段代码:

image.png


函数

函数是一组可重用的代码,可以在程序中的任何地方调用。这消除了一遍又一遍地编写相同的代码的需要。这有助于程序员将大型程序划分为许多小型且可管理的功能。

除了内置函数外,VBA还允许编写用户定义的函数,并在 Function 和 End Function 关键字之间写入语句。

例如下面的这个获取文件名的函数就可以在不同场合使用call来调用。

image.png

04 

入门儿VBA


要想学VBA,首先要知道宏,要学会录制宏,这可以很好的助力vba代码的编写,下面演示一个添加宏的例子,就算VBA的入门礼儿了。

hong.gif


05 

写在最后



三寿的脑细胞此处内容已经被作者隐藏,请输入验证码查看内容
验证码:
请关注本站微信公众号,回复“验证码”,获取验证码。在微信里搜索“三寿的脑细胞”或者“URItker”或者微信扫描右侧二维码都可以关注本站微信公众号。


image.png

评论

百度搜索

站点信息

  • 文章总数:508
  • 页面总数:7
  • 分类总数:29
  • 标签总数:861
  • 评论总数:285
  • 浏览总数:653970
Copyright ©2019-2020.Powered by©刘相涛 辽ICP备14000512号-5