VBA之Excel应用第五节:录制宏时,使用绝对引用和相对引用

《VBA之Excel应用》(版权10178983)是非常经典的,是我推出的第七套教程,定位于初级,目前是第一版修订。这套教程从简单的录制宏开始讲解,一直到窗体的搭建,内容丰富,实例众多。大家可以非常容易的掌握相关的知识,这套教程共三册,十七章,都是我们在利用EXCEL工作过程中需要掌握的知识点,希望大家能掌握利用。今日讲解的内容是:VBA之Excel应用第五节:录制宏时,使用绝对(Absolute)引用和相对(Relative)引用ae59ffb6856fe37d80ebeab7f8fe1c0b.jpeg

【分享成果,随喜正能量】放开心胸,堂堂正正,不计较眼前荣辱得失。一生做事光明磊落,心境恬然自得,自然吉祥遂愿,平安自在,乐享天年。 得此偈者,命途多舛,起起伏伏,时而阴云密布,时而朗天开。虽命途风雨阴晦,坡坎沟壑,但要堂堂正正做人,这样才能时来运转,祥光永照,天年长享。。

第五节 录制宏时,使用绝对(Absolute)引用和相对(Relative)引用的区别

大家好,我们继续VBA的学习,在上一讲中,我们讲到对于初学VBA人员,可以录制一段代码让一些重复的工作能自动完成。这不失为一种提高效率的方法。但我们在录制宏的时候,一定要注意区别绝对引用和相对引用。这节我将就这个问题给大家以详细讲解。

1 绝对引用时代码的录制效果

所谓绝对引用,是单元格中的绝对单元格引用(例如$A$1)总是在指定位置引用单元格。如果公式所在单元格的位置改变,绝对引用保持不变。如果多行或多列地复制公式,绝对引用将不作调整。默认情况下,新公式使用相对引用,需要将它们转换为绝对引用。例如,如果将单元格B2 中的绝对引用“=$A$1”复制到单元格B3,则在两个单元格中一样,都是 “=$A$1”。

在VBA录制宏的时候默认采用的是绝对引用的方式。

例如,我们要录制一段宏,录制的内容是:在单元格A1中录入:“VBA世界”,A2中录入“VBA学习”,A3中录入“VBA代码”

我们看一下录制的效果:

Sub 宏2()

Range("A1").Select

ActiveCell.FormulaR1C1 = "VBA世界"

Range("A2").Select

ActiveCell.FormulaR1C1 = "VBA学习"

Range("A3").Select

ActiveCell.FormulaR1C1 = "VBA代码"

End Sub

代码截图:

19b1385cedb44398fdaa4a7b5b46fa29.jpeg

2 相对引用时代码的录制效果

所谓相对单元格引用(例如 A1)是基于包含公式和单元格引用的单元格的相对位置。如果公式所在单元格的位置改变,引用也随之改变。如果多行或多列地复制公式,引用会自动调整。默认情况下,新公式使用相对引用。例如,如果将单元格 B2 中的相对引用复制到单元格 B3,将自动从 =A1 调整到 =A2。

在录制宏的时候,如果需要相对引用,需要按如下的处理方式:

第一:先点击“使用相对应用”;第二:再点击“录制宏”

f77b64f4ddcd70bdae7bd2ef09617f08.jpeg

实现同样的录制内容:在单元格A1中录入:“VBA世界”,A2中录入“VBA学习”,A3中录入“VBA代码”的一段宏,我们看看在选择相对引用的情况下产生的代码:

Sub 宏3()

ActiveCell.FormulaR1C1 = "VBA世界"

ActiveCell.Offset(1, 0).Range("A1").Select

ActiveCell.FormulaR1C1 = "VBA学习"

ActiveCell.Offset(1, 0).Range("A1").Select

ActiveCell.FormulaR1C1 = "VBA代码"

End Sub

代码截图:

15612ebfa634330ef379a89b22a6445e.jpeg

3 绝对引用录制宏和相对引用录制宏的效果区别

两种方法的代码在实现效果上有什么区别呢?我们先在工作表窗口建立两个运行按钮分别来实现这两种引用的效果,如下图所示的两个按钮。

8bedd81181c72ce751fa42549b6aafe6.jpeg

同时我给出了当前活动单元格的位置;

我们先点击“绝对引用”的运行按钮,实现的效果如下:

61983ad352945bab53e686d6b7043395.jpeg

我们仍旧把光标点到“C9”单元格的位置,点击“相对引用”的运行按钮,实现的效果如下:

030185702623fde3bc3a0642a904602a.jpeg

此时我们发现,我们填入的三组字符出现在了C9,C10,C11 三个单元格内。也就是说,在相对引用条件下录入的代码是以相对于当前活动单元格的录入效果。

今日内容回向:

1)什么是绝对引用,什么是相对引用?

2)绝对引用和相对引用条件下录制的宏代码有何不同?

3) 绝对引用和相对引用条件下录制的宏代码在实现效果上有何不同?

本讲内容参考程序文件:工作簿01.xlsm

1295a08d10d413dd25ddb143895384f6.jpeg

我20多年的VBA成果全在下面的资料中:


a5bee78a77aec6bc6868cf353bfc3062.jpeg

476c4253f05be75afc0ee2e2319c5e52.jpeg

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/624709.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于JAVA+ssm开发的在线报名系统设计与实现【附源码】

基于JAVAssm开发的在线报名系统设计与实现【附源码】 🍅 作者主页 央顺技术团队 🍅 欢迎点赞 👍 收藏 ⭐留言 📝 🍅 文末获取源码联系方式 📝 🍅 查看下方微信号获取联系方式 承接各种定制系统 …

vue使用i18n实现国际化

安装 npm install vue-i18nnext在src下创建一个名为i18n的文件夹,并按照下图创建需要的文件 i18n/locales/en.json {"common": {"BUTTON_OK": "OK","BUTTON_CANCEL": "Cancel","BUTTON_SUBMIT": "Submit…

linux后台进程的总结

文章目录 方案1 nohup &方案2 screen 方案1 nohup & 1、单独使用 nohup 执行脚本,如下图所示,终端会被接管,就是标准输入stdin 被关闭了,使用ctrlc会导致终止执行,但是可以关闭这个终端,重新打开终…

二叉树题目:从前序与后序遍历序列构造二叉树

文章目录 题目标题和出处难度题目描述要求示例数据范围 前言解法一思路和算法代码复杂度分析 解法二思路和算法代码复杂度分析 题目 标题和出处 标题:从前序与后序遍历序列构造二叉树 出处:889. 从前序与后序遍历序列构造二叉树 难度 7 级 题目描述…

react项目运行卡在编译:您当前运行的TypeScript版本不受@TypeScript eslint/TypeScript estree的官方支持

1.问题 错误信息具体如下: 搜索了一下,是typescript版本的问题,提示我版本需要在3.3.0和4.5.0中间,我查看了package.json,显示版本为4.1.3,然后一直给我提示我的版本是4.9.5,全局搜索一下&…

FPGA——时序分析与约束(Quartus II)

FPGA时序分析与约束 FPGA结构基础数据传输模型Quartus II 时序报告Quartus II 中TimeQuest的操作实操 时序分析:通过分析FPGA内部各个存储器之间的数据和时钟传输路径,来分析数据延迟和时钟延迟的关系,保证所有寄存器都可以正确寄存数据。 数…

Ubuntu配置NFS客户端和服务端详解——手把手配置

Ubuntu配置NFS客户端和服务端 如果您想实现远程访问并修改 ROS 主机中 Ubuntu 上的文件,可以通过 NFS挂载的方式。虚拟机上的 Ubuntu 系统可以通过 NFS 的方式来访问 ROS 主机中Ubuntu 系统的文件,NFS 分为服务器挂载和客户端访问。这里虚拟机上的 Ubun…

基于多反应堆的高并发服务器【C/C++/Reactor】(中)HttpRequest 提取请求行、解析请求行和优化 以及解析请求头并存储

### 知识点1:读取网络数据 客户端发送给服务器的通信数据通过封装的bufferSocketRead函数读取读取的数据存储在struct Buffer结构体实例中,可将该实例作为参数传递给解析函数 回顾Buffer.c中的bufferSocketRead函数 // 写内存 2.接收套接字数据 int b…

腾讯云服务器新版活动报价表,3年核5年适合长期使用

腾讯云服务器优惠价格表_一年、3年、包月和1小时费用_最新报价 腾讯云服务器租用优惠价格表:轻量应用服务器2核2G3M价格62元一年、2核2G4M价格118元一年,540元三年、2核4G5M带宽218元一年,2核4G5M带宽756元三年、轻量4核8G12M服务器646元15个…

【复现】Tenda信息泄露漏洞_19

目录 一.概述 二 .漏洞影响 三.漏洞复现 1. 漏洞一: 四.修复建议: 五. 搜索语法: 六.免责声明 一.概述 Tenda远端WEB管理是为了在外网(其他网络)可以访问路由器,从而进行管理。 电脑可以通过网线连接…

HTML---JAVAscript对向和原型链

文章目录 前言一、pandas是什么?二、使用步骤 1.引入库2.读入数据总结 前言 一.JavaSceipt对象概述 JavaScript是一种基于对象的编程语言,每个值都是一个对象。JavaScript中的对象是一种无序的键值对集合,其中每个键都是唯一的。 JavaScript的…

浅析Pe2shellcode

编者注:本文仅供学习研究,严禁从事非法活动,任何后果由使用者本人负责。 前言 众所周知,对shellcode免杀是很流行的技术,但是直接对exe的免杀方法相对稀缺,如果我们能将exe转为shellcode,然后用…

基于ssm的中文学习系统的设计与实现+jsp论文

摘 要 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本中文学习系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息&am…

电脑桌面便签在哪设置?备忘录软件哪个好?

好记性不如烂笔头!相信很多打工族在电脑面前办公的时候,都需要随时记录工作中的事项,有的用TXT记录,有的手写笔记,还有一些用电脑桌面便签类软件。而当我们待办事项繁多的时候,手写或文本记录并不能有效帮我…

去不了哈尔滨? 来看这里VR全景线上云体验

如果你无法亲自前往哈尔滨,那么不要失望,因为现在有一种全新的方式让你在家就能领略到哈尔滨的美丽景色。 冰城客户端、哈尔滨新闻网承办的“激情迎亚冬 冰雪暖世界——2024年哈尔滨冰雪乐园” 运用720云VR打造的沉浸式体验产品正式上线,将带…

[我的Rust库更新]get_local_info 0.2.3

今天收到西安城市开发者社区的文章收录通知,谢谢社区的肯定。 随即发布0.2.3版本,增加峰值算法。 get_local_info是一个获取linux本地信息的Rust三方库,其目标是降低获取本地linux系统信息的难度。支持银河麒麟10、UOS、鸿蒙等国产系统。 项…

利用HTML和CSS实现的浮动布局

代码如下 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title><style>*{m…

MPU机制与实现详解

目录 MPU机制与实现详解 Partition元素-MPU Partition实现元素OSApplication Partition元素-RTE MPU机制与实现详解 1、freedom from interference 此概念来自ISO26262-1&#xff1a;多个元素之间没有可能导致违反安全目标的级联故障&#xff0c;称之为免于干涉。 在左侧的…

案例129:基于微信小程序的外卖商城平台设计与实现

文末获取源码 开发语言&#xff1a;Java 框架&#xff1a;SSM JDK版本&#xff1a;JDK1.8 数据库&#xff1a;mysql 5.7 开发软件&#xff1a;eclipse/myeclipse/idea Maven包&#xff1a;Maven3.5.4 小程序框架&#xff1a;uniapp 小程序开发软件&#xff1a;HBuilder X 小程序…

pybind11实现numpy和OpenCV Mat的数据交互

1、编译安装pybind11 下载源代码&#xff1a;https://github.com/pybind/pybind11&#xff0c; 文档&#xff1a;https://pybind11.readthedocs.io/en/stable/compiling.html 解压后进入到命令行&#xff0c;如果有conda环境&#xff0c;就先进入想要的conda环境&#xff0c…