大家好,我是永不止步的老牛。

上一篇我们介绍了VBA的过程和函数,本篇我们介绍Excel宏。

Excel宏是一些VBA代码的集合,宏可以被执行,宏可以进行录制,保存下来方便多次执行,宏录制就是将我们在Excel中进行的一些操作记录下来,并转换成VBA代码,因为宏是一段可执行代码的集合,所以有可能被病毒或别有用心的人利用,Excel有宏安全性设置,可以根据需要进行设置。

有很多同学想学VBA,又不知该如何下手,其实只要我们掌握了Excel和VBA的一些基本概念后,宏可以帮助我们学习VBA的一些写法,比如说你想设置列宽,不知用VBA怎么写,可以录制宏,手动去操作一下,Excel就把你的操作记录成VBA代码了,我们下来只要去分析转换好的VBA代码就行,所以宏是我们使用VBA编程的好帮手。

个人认为,宏生成的VBA代码存在冗余,我们进行VBA编程时,可以参考宏录制的代码,但不建议直接使用。

如果要保存含有宏的Excel文件,则需要将文件保存为启用宏的格式*.xlsm。

有关宏的操作项在顶部菜单“开发工具”里。

  • “宏”:指的是执行宏。

  • “录制宏”:点击后变成“停止录制”,指的是开始录制我们接下来的操作,直到点击“停止录制”。

  • “使用相对引用”:Excel默认是按照绝对引用录制宏,点击“使用相对引用”后,“使用相对引用”按钮显示成选中状态,此时Excel录制宏就使用相对引用。绝对引用指的是你在F4输入了1,在F5输入了2, VBA代码中记录的就是F4和F5单元格,不论你此刻选中哪个单元格,执行录制的宏,都会把1赋值到F4,2赋值到F5。而使用相对引用,则是根据选择的区域的第一个单元格进行应用录制,上面的同样操作,不会记录F4和F5,会记录录入了1,然后在往下1个单元格,录入了2,此时假如你选中G100后执行录制的宏,那么G100就是1,G101就是2。

  • “宏安全性”是对宏设置。

  • “宏”:既然是执行宏,宏又是一段VBA代码的集合,那么上一篇我们编写的过程是不是宏呢?能不能执行?函数又能不能被执行呢?我们看一下。

我们可以看见,我们写的过程就是宏,可以成功被执行,而函数GetBMI并没有出现在可执行列表中,说明不能被直接执行。

下来我们看看如何录制宏,点击“录制宏”,出现如下窗口:

“宏名”就是给宏起一个名字,名字中不能包含空格,不能和已经有的宏名字重复,可以设置一个按键,和Ctrl组成快捷键来执行宏如果已经有这个快捷键,就和Ctrl+Shift组合,最好给每个正式的宏书写说明,方便后续能明白这个宏的作用。

我们实际操作一下,用录制宏来记录设置H4:O8区域的样式,看看生成的VBA代码。

A.加上边框

我们给H4:O8区域设置边框,选中H4:O8区域,录制宏。

我们可以看到录制好了宏就是生成了一些VBA代码,我们再看一下执行这个宏的效果,我们先把边框清除掉,然后执行刚录制的宏。

一切OK,以后我们只要选中一个区域,执行宏“加边框”,就会给选中区域加上边框。

B.居中对齐

我们给H4:O8区域设置居中对齐,选中H4:O8区域,录制宏。

自动生成以下VBA代码,

C.给表头设置背景

我们给H4:O4区域设置背景色,选中H4:O4区域,录制宏。

我们分析下生成的VBA代码,发现第一句是Range("H4:O4").Select,这句的意思是选中区域H4:O4,后面的代码是设置背景色,意味着每次执行这个宏,都会选中H4:O4并设置背景色,如果我们想执行这个宏改变的是我们当前选中区域的背景色,那么就删除掉第一句,通过这段代码,我们学会了VBA选中区域用Range(区域).Select。

D.将H:O列设置成自适应宽度

原来自适应列宽就一句代码,Columns("H:O").EntireColumn.AutoFit。

目前我们录制了4个宏,都设置了快捷键,下来我们把样式恢复成初始状态,分别按4个快捷键去执行宏。

是不是很方便,如果我们把VBA代码修改一下,并把4个宏合并成1个,那么以后我们只要选中一个区域,执行这个宏,就一次设置好边框、居中对齐、表头背景、自适应列宽。下面是我改好的代码,大家可以实验一下:

Sub 设置样式()

' 设置选中区域样式

' 快捷键: Ctrl+Shift+P

With Selection

' 给单元格区域添加边框线

.BorderAround LineStyle:=xlContinuous

.Borders(xlInsideVertical).LineStyle = xlContinuous

.Borders(xlInsideHorizontal).LineStyle = xlContinuous

' 设置选中区域居中对齐

.HorizontalAlignment = xlCenter

.VerticalAlignment = xlCenter

' 给选择区域设置背景色

.Rows(1).Interior.ThemeColor = xlThemeColorAccent6

.Rows(1).Interior.TintAndShade = 0.799981688894314

' 设置选择列为自适应

.EntireColumn.AutoFit

End With

End Sub

我么现在基本明白宏有两大基本功能。

1.执行重复、相同的工作,就好像你用Ctrl+C复制(录制宏),然后去好多个需要的地方进行Ctrl+V粘贴(执行宏)。

2.帮助学习VBA代码的写法

还有Excel宏表函数,大家有兴趣的可以了解一下,有些功能还很有用,比如EVALUATE函数、GET.DOCUMENT函数、GET.CELL函数、GET.WORKBOOK函数、FILES函数等。

Excel宏是个好东西,今天就简单介绍到这,大家最好能自己实际练习一下,下一篇文章我们介绍VBA的判断语句。

004.了解Excel宏相关推荐

  1. EXCEL宏代码大全

    本文件部分文章来源于网络,文章版权归原作者所有,如果本站转载的文章侵犯了您的权益请及时联系我们,我们将尽快妥善处理.本站除部分特别声明禁止转载的专稿外,其他文章可以自由转载,但请务必注明原出处和作者. ...

  2. excel调用python编程-用Python如何开发Excel宏脚本?新手必学

    今天介绍一个叫 xlpython 的库,通过它我们可以用 Python 来开发 Excel 的宏脚本,真正实现在 Excel 中调用 Python. 基本环境 操作系统:Windows 10 x64 ...

  3. python控制excel宏复制,将列从一个excel复制到另一个excel并从python运行宏

    我正在尝试将合并文件中的所有列复制到摘要文件中,并从python运行excel宏,摘要文件有从a到BB的列,我只想复制到AI,我尝试了下面的代码,但它没有给我任何结果wbpath = 'C:\\Use ...

  4. Excel宏的自动运行设置

    如何设置宏的自动运行呢? 这里提供两种方式 在Excel打开的时候自动调用宏执行 通过脚本调用Excel中宏 本篇以 Excel宏的录制和解密 介绍的宏进行说明和演示. 宏自动运行的场景 自动运行宏的 ...

  5. [EXCEL] 宏的录制、调用和删除

    目录 什么是宏? 如何使用"宏"? 1.添加"开发工具"选项卡 2.录制宏 1)将选中的单元格停留在A1位置 2)点击"录制宏",设置宏名和 ...

  6. 简单excel宏工具对数据进行脱敏

    简单excel宏工具对数据进行脱敏 宏代码 Sub aa()Dim col As StringDim maxrowDim stratpoint&, changdu&Set Rg = A ...

  7. python运行excel宏_从python运行excel宏

    我正在使用以下代码从Python运行Excel宏: import pymysql import datetime import csv import math import os import glo ...

  8. Java调用excel宏

    下载jacob-1.19.zip https://sourceforge.net/projects/jacob-project/ jacob-1.19-x64.dll放到C:\Windows\Syst ...

  9. java 调excel 的宏_Microsoft Excel宏来运行Java程序

    我学会了在Jxl和POI API的帮助下使用Java程序读写Excel文件. 是否可以在宏的帮助下运行Java程序? 检查一下 - [stackoverflow.com/questions/52973 ...

最新文章

  1. Agan的IT博客开张啦
  2. 现代软件工程第一周博客作业
  3. 当当网高可用架构之道--转
  4. jvm性能调优 - 22JVM GC回顾
  5. Java 实现单例模式的 9 种方法
  6. 实现一个压缩Remoting传输数据的Sink:CompressionSink
  7. Hadoop Yarn容量调度器特点和分配算法介绍
  8. 基于 abp vNext 和 .NET Core 开发博客项目 - 博客接口实战篇(五)
  9. 2021小程序该怎么做?爆款产品拆解案例来了
  10. android 人机界面设计规范,iPhone 人机界面设计规范(中英对照)
  11. Mybatis入门-关联查询(八)
  12. iOS键盘监听以及获取键盘高度
  13. 软件天才都是训练出来的
  14. [转载]修改SDE权限造成无法在ArcMap中绘制图形的解决办法
  15. 我的世界旅行者地图服务器不显示,我的世界旅行者地图怎么没有传送 | 手游网游页游攻略大全...
  16. Android_JNI编程入门
  17. 夜雨数竞笔记-极限(4)-Stolz定理
  18. Google今日涂鸦:纪念居里夫人诞辰144周年
  19. 将 Word 转换为 Markdown格式【详细版本】2022.5.6
  20. sql with ties_SQL WITH TIES子句

热门文章

  1. 看MindSpore加持下,如何「炼出」首个千亿参数中文预训练语言模型?
  2. 小程序转 App 帮助企业打开营销局面
  3. antd从v2升级到v3
  4. 内核与驱动文件的version magic匹配问题
  5. imx6ull驱动开发经验
  6. 和量子计算有什么区别 并发_到底什么是量子计算?
  7. 青龙-今日头条极速版更新
  8. 歇逼了兄弟,心态崩了
  9. 验证身份证是否真实有效
  10. 微信小程序把图片下载到本地相册(附源码)