VBA 学习笔记1 对象以及属性

目录

  • 1 取得VBA对象
    • 1.1 取得工作簿对象
    • 1.2 取得工作表对象
    • 1.3 取得单元格对象
    • 1.4 取得对象的属性
    • 1.5 文档的方法1

进入vba 界面
方式之一:
快捷键:ALTER+F11

运行方式之一:
进入vba界面,点击绿色三角符号

1 取得VBA对象

1.1 取得工作簿对象

Sub Test()'把当前工作簿的名称赋值给单元格A1'testvba.xlsm 只能是当前工作簿的名称[a1] = Workbooks("testvba.xlsm").Name'把活动工作簿的名称赋值给单元格A2[a2] = ActiveWorkbook.Name'把当前工作簿的名称赋值给单元格A3[a3] = ThisWorkbook.Name
End Sub

在这里插入图片描述

下面是执行结果
在这里插入图片描述

1.2 取得工作表对象

默认sheet名称是Sheet1
新建一个sheet,名称是Sheet2
新建一个sheet,并改名称为:testsheet
新建一个sheet,删除掉
新建一个sheet,并改名称为:abc
最终得到下图的结果
在这里插入图片描述
在这里插入图片描述

'取得上面4个工作表的名称
Sub Test()'方式1[a1] = Sheet1.Name[a2] = Sheet2.Name[a3] = Sheet3.Name[a4] = Sheet5.Name'方式2[b1] = Sheets(1).Name[b2] = Sheets(2).Name[b3] = Sheets(3).Name[b4] = Sheets(4).Name'方式3[c1] = Sheets("Sheet1").Name[c2] = Sheets("Sheet2").Name[c3] = Sheets("testsheet").Name[c4] = Sheets("abc").Name'方式4 活动工作表的名称[a5] = ActiveSheet.Name
End Sub

下面是执行结果
在这里插入图片描述

1.3 取得单元格对象

'取得单元格对象
Sub Test()'方式1 单元格A1,赋值文字“方式1”[a1] = "方式1"'方式2 3是第3行,1是第1列 单元格A3,赋值文字“方式2”Cells(3, 1) = "方式2"'方式3 当前选择的单元格,赋值文字“方式3”ActiveCell = "方式3"'方式4 单元格A2,赋值文字“方式4”Range("a2") = "方式4"'方式5 选中Excel的D列Range("d:d").Select'方式5-1 选中第10行'Range("10:10").Select'方式6 选中一个区域e2:g5,填充颜色红色Range("e2:g5").Interior.ColorIndex = 3
End Sub

选择c14单元格,然后执行代码,下面是执行结果
在这里插入图片描述

1.4 取得对象的属性

'取得对象的属性
Sub Test()'取得所有sheet的数量[a1] = Sheets.Count'取得第一个sheet的名称[a2] = Sheets(1).Name'取得当前选中的单元格的地址[a3] = ActiveCell.Address'取得本excel的文档路径[a4] = ThisWorkbook.Path'取得A1单元格的值[a5] = Range("a1").Value'选择当前excel的第3个sheet的a1:b10区域,填充颜色为50的颜色'ThisWorkbook.Sheets(3).Range("a1:b10").Interior.ColorIndex = 50
End Sub

选择单元格A1后,执行代码,下面是执行结果
在这里插入图片描述

1.5 文档的方法1

01 新建工作簿

Sub Test()
'新建工作簿
Workbooks.Add
'Workbooks.Add.Name = "test.xlsx" 可以修改新工作簿的名称
'新工作簿的第一个sheet的名称修改为add
ActiveWorkbook.Sheets(1).Name = "add"
'新工作簿的第一个sheet的单元格a3的值修改为abc
ActiveWorkbook.Sheets(1).Cells(3, 1) = "abc"
'添加一个sheet
ActiveWorkbook.Sheets.Add
'新sheet修改名称为add2
ActiveWorkbook.ActiveSheet.Name = "add2"
'第一个sheet作为活动sheet
ActiveWorkbook.Sheets("add").Activate
'关闭新工作簿
ActiveWorkbook.Close
End Sub

执行结果:
在这里插入图片描述

02 打开工作簿

Sub Test()
'打开一个工作簿
Workbooks.Open ("D:\Jerry\Documents\工作簿4.xlsx")
'关闭这个打开的工作簿
ActiveWorkbook.Close
End Sub

执行时一闪而过,因为文档被打开后,立马又被关闭了。如果F8,逐行代码运行,则可以看到工作簿被打开。

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

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

相关文章

DAY21

题目一 给定三个字符串str1、str2和aim, 如果aim包含且仅包含来自str1和str2的所有字符,而且在aim中属于str1的字符 之间保持原来在str1中的顺序,属于str2的字符之间保持原来在str2中的顺序,那么称aim是str1和str2的交错组成。实…

Springboot-Retrofit HTTP工具框架快速使用

在SpringBoot项目直接使用okhttp、httpClient或者RestTemplate发起HTTP请求,既繁琐又不方便统一管理。 因此,在这里推荐一个适用于SpringBoot项目的轻量级HTTP客户端框架retrofit-spring-boot-starter,使用非常简单方便,同时又提供…

约数个数(质因子分解)

思路: (1)由数论基本定理,任何一个正整数x都能写作,其中p1,p2..pk为x的质因子。 (2)由此可以推断,要求一个数约数的个数,注意到约数就是p1,p2...pk的一种组合&#xff…

日常BUG—— SpringBoot项目DEBUG模式启动慢、卡死。

😜作 者:是江迪呀✒️本文关键词:日常BUG、BUG、问题分析☀️每日 一言 :存在错误说明你在进步! 一、问题描述 我们调试程序时,需要使用DEBUG模式启动SpringBoot项目, 有时候会发…

SQL | 使用通配符进行过滤

6-使用通配符进行过滤 6.1-LIKE操作符 前面介绍的所有操作符都是通过已知的值进行过滤,或者检查某个范围的值。但是如果我们想要查找产品名字中含有bag的数据,就不能使用前面那种过滤情况。 利用通配符,可以创建比较特定数据的搜索模式。 …

c++ 有元

友元分为两部分内容 友元函数友元类 友元函数 问题&#xff1a;当我们尝试去重载operator<<&#xff0c;然后发现没办法将operator<<重载成成员函数。因为cout的输出流对象和隐含的this指针在抢占第一个参数的位置。this指针默认是第一个参数也就是左操作 数了。…

基于dbn+svr的交通流量预测,dbn详细原理

目录 背影 DBN神经网络的原理 DBN神经网络的定义 受限玻尔兹曼机(RBM) DBN+SVR的交通流量预测 基本结构 主要参数 数据 MATALB代码 结果图 展望 背影 DBN是一种深度学习神经网络,拥有提取特征,非监督学习的能力,是一种非常好的分类算法,本文将DBN+SVR用于交通流量预测…

二叉树题目:二叉树的直径

文章目录 题目标题和出处难度题目描述要求示例数据范围 解法思路和算法代码复杂度分析 题目 标题和出处 标题&#xff1a;二叉树的直径 出处&#xff1a;543. 二叉树的直径 难度 3 级 题目描述 要求 给定二叉树的根结点 root \texttt{root} root&#xff0c;返回其直径…

考研408 | 【计算机网络】 传输层

导图 传输层的功能 传输层的两个协议 传输层的寻址与端口 UDP协议 UDP的主要特点 UDP首部格式&#xff1a; UDP校验&#xff1a; TCP协议 TCP协议的特点 TCP报文段首部格式 TCP连接管理 TCP的连接建立 SYN洪泛攻击 TCP的连接释放 TCP可靠传输 序号&#xff1a; 确认&#xff1…

ASEMI快恢复二极管APT80DQ20BG怎么检查好坏

编辑-Z 二极管APT80DQ20BG是一种高压快恢复二极管&#xff0c;常用于电源和电能质量控制等领域。如果您的二极管出现故障或需要进行维修&#xff0c;以下是一些可能的解决方案。 首先&#xff0c;确保您已经断开了电源&#xff0c;并且具备基本的电子维修知识和技能。如果您不…

添加vue devtools扩展工具+添加后F12不显示Vue图标

前言&#xff1a;在开启Vue学习之旅时&#xff0c;遇到问题两个问题&#xff0c;第一添加不上vue devtools扩展工具&#xff0c;第二添加完成后&#xff0c;F12不显示Vue图标。查阅了很多博客&#xff0c;自己解决了问题&#xff0c;故写此博客记录。如果你遇到和我一样的问题&…

React源码解析18(3)------ beginWork的工作流程【mount】

摘要 OK&#xff0c;经过上一篇文章。我们调用了&#xff1a; const root document.querySelector(#root); ReactDOM.createRoot(root)生成了FilberRootNode和HostRootFilber。 并且二者之间的对应关系也已经确定。 而下一步我们就需要调用render方法来讲react元素挂载在ro…

【JavaEE进阶】SpringBoot 日志

文章目录 一. 日志有什么用?二. 自定义日志打印1. 日志的使用与打印 三. 日志级别1. 日志级别有什么用?2. 日志级别的分类及使用 四. 日志持久化五. 更简单的日志输出---Lombok1. Lombok的使用2. lombok原理解释2.1 Lombok更多注解说明 一. 日志有什么用? 在Java中&#xf…

【gogogo专栏】指针

go语言指针 为什么需要指针指针使用实例值传递地址传递多级指针 为什么需要指针 作为一个大学划水&#xff0c;毕业一直写java的程序员来说&#xff0c;多多少少对于指针有点陌生&#xff0c;由于近期需要转go&#xff0c;正好学到指针这里&#xff0c;就来探究下指针的使用场景…

ThreadLocal详解

ThreadLocal详解 一、故事背景二、知识点主要构成1、什么是ThreadLocal&#xff1f;2、ThreadLocal的基本使用内存泄漏问题引用类型&#xff1a;强引用&#xff1a;软引用弱引用虚引用 ThreadLocal内存泄漏原因 三、总结提升 一、故事背景 最近在学习并发编程相关内容&#xf…

Es、kibana安装教程-ES(二)

上篇文章介绍了ES负责数据存储&#xff0c;计算和搜索&#xff0c;他与传统数据库不同&#xff0c;是基于倒排索引来解决问题的。Kibana是es可视化工具。 分布式搜索ElasticSearch-ES&#xff08;一&#xff09; 一、ElasticSearch安装 官网下载地址&#xff1a;https://www…

[C语言] 指针

1. 指针是什么 2. 指针和指针类型 3. 野指针 4. 指针运算 5. 指针和数组 6. 二级指针 7. 指针数组 目录 1. 指针是什么&#xff1f; 2. 指针和指针类型 2.1 指针-整数 2.2 指针的解引用 3. 野指针 3.1 野指针成因 3.2 如何规避野指针 4. 指针运算 4.1 指针…

不用技术代码,分班查询系统怎么做?

暑假即将结束&#xff0c;新学期开始将面临分班信息公布的工作&#xff01;对于分班信息公布&#xff0c;涉及到学生的个人信息&#xff0c;包括姓名、学号、班级等。在发布这些信息时&#xff0c;必须确保数据的保密性&#xff0c;防止未经授权的人员获取到学生的个人信息。因…

docker的服务/容器缺少vim问题

背景/问题&#xff1a; docker的服务/容器缺少vim问题 bash: vim: command not found 在docker的mysql服务中安装Vim 1、执行apt-get update root6d8d17e320a0:/# apt-get update问题:文件下载失败 Err:1 http://security.debian.org/debian-security buster/updates InRe…

【Linux】程序地址空间

程序地址空间 首先引入地址空间的作用什么是地址空间为什么要有地址空间 首先引入地址空间的作用 1 #include <stdio.h>2 #include <unistd.h>3 #include <stdlib.h>4 int g_val 100;6 int main()7 {8 pid_t id fork();9 if(id 0)10 {11 int cn…