Excel宏的介绍及应用

时间:2024-11-08 08:12:37

Excel中的宏(Macro)是什么

在Excel的“视图”标签页下,有一个宏的功能,示例如下图:

在这里插入图片描述
宏其实是一段可以重复执行的代码,对应上图的两个选项:

  • 查看宏:查看已经存在的宏的代码段,并且可以执行
  • 录制宏: Excel提供了可以像录制声音那样录制宏的代码段,点击“录制宏”之后,接下来对Excel的操作会自动转换为代码。

宏的来历

既然宏是可以重复执行的代码段,那宏是什么语言的代码呢?答案是VBA, 那VBA是什么语言呢? 这就要从BASIC语言说起了。

  • BASIC是一门很古老的计算机语言,发表于1964年。BASIC代码通过BASIC解释器翻译为计算机能识别的机器指令。
    微软的DOS、Windows 3、Windows 9系列预装了BASIC解释器(称为:QBasic),所以可以直接写Basic程序;但从Windows 2000开始,就不再预装BASIC解释器了。
  • 微软基于Windows 图形界面开发了新的Visual Basic语言,并提供了可视化的便捷开发工具Visual Basic IDE。不过是需要收费的。
    1996年,微软开发Visual Basic Scripting Editing(即VBScript),类似快速书写批处理脚本,语法和VB保持一致。VBScript在操作系统内置。
    VBA: Visual Basic for Applications 。微软在Office系列产品中集成了VBScript解释器,这个VBScript就是VBA。除了解释器,还有集成开发环境,一个简化版的Visual Basic IDE。

所以, 宏属于VB语言系列,但是属于脚本语言, 也就是不需要编译为exe文件,可以由解释器直接解释运行,宏的代码示例:

Sub1()
'
' 宏1 宏
'

'
    Cells.Select
    Range("G22").Activate
    
    Sheets("Sheet1").Select
    Cells.Select
    Range("F26").Activate
    
End Sub
  • Sub 是VB语言的过程, 相当于函数的概念
  • 单引号 ’ 用来添加注释,属于VB的语法
  • Cells、Sheets、ActiveSheet 是VBA的对象

集成在Excel 中的开发IDE如下:

在这里插入图片描述

宏能干什么?

宏是一段脚本代码,能够帮助我们进行重复、繁杂的动作。最重要的是宏的编写或录制很简单,没有编程经验或是没有VBA语言的基础也可以实现简单的宏。宏一般是用来处理复杂的Excel,也就是内容较多或是格式等较为复杂。宏可以用来:

  1. 对Excel文件、工作表(Sheet)等进行操作,可以像界面操作一样复制、删除、移动
  2. 对单元格(Cell)进行操作,包括设置值、获取Comment等
  3. 可以将Excel中的数据输出到文件中

典型应用包括:

  1. 收集不同Excel中的工作表统一到一份Excel中,自动产生报表
  2. 在系统开发时,用来收集初始数据或是增量的Admin数据
    3.。。。

宏的录制

接下来以一个复制工作表的实例演示宏的录制。

  • 视图>宏>录制宏
    在这里插入图片描述
    在这里插入图片描述

  • 切到Sheet2,在界面上Ctrl+A选中Sheet2的所有Cell, 键盘Ctrl+C

  • 切到Sheet1,Ctrl+A选中Sheet1的所有Cell,键盘Ctrl+V

  • 点击“停止录制”,保存宏
    以上宏的录制就完成了, 通过查看宏,

  • 点击“执行”就可以重复刚刚录制的动作了

  • 点击“编辑”就可以打开IDE并看到录制的宏的代码。如果有VB的编程基础,基础VBA的API就可以进行宏的编程了。
    在这里插入图片描述

宏的保存

宏的代码段是保存在Excel文件中,在老版本的Excel中需要开启允许宏的设置, 新版本的Excel则需要保存后缀名是 .xlsm 的文件。如下图:
在这里插入图片描述
如果不保存.xlsm 类型,则会报如下提示,而且保存之后宏也可能丢失。
在这里插入图片描述