首页 > 其他分享 >VBA之Excel应用第三章第一节:对象的层次结构

VBA之Excel应用第三章第一节:对象的层次结构

时间:2024-09-06 18:23:11浏览次数:13  
标签:03 VBA 对象 Excel 工作 层次结构 xlsm

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

VBA之Excel应用第三章第一节:对象的层次结构_VBA



【分享成果,随喜正能量】有一些心地险恶的人,我们看到他的面貌都可以看到他心中的恶念,都可以感觉到他脸上的杀气,遇到这样的人我们会远离他,感到很恐怖,不寒而栗。但是恶念的相貌也可以改变的,正所谓心好相貌就会好。。


第三章 工作簿(Workbook)和工作表(Worksheet)对象(Object)

大家好,我们今日开始讲解工作簿(Workbook)和工作表(Worksheet)对象(Object),我们经常讲的面向对象编程,这里的工作表和工作簿就是所谓的对象。对象是一个名词,每个对象有着自己的属性和方法。这些属性和方法就是我们要利用的工具。这个章节中我们将讲解到对象的层次结构、集合、属性和方法,同时还会讲解到工作簿的打开和关闭以及工作表的循环处理。由于这套教程是针对EXCEL而写的,所以这章内容非常重要。

VBA之Excel应用第三章第一节:对象的层次结构_层次结构_02


第一节 对象的层次结构

在Excel VBA中,一个对象可以包含另一个对象,该对象也可以包含另一个对象。换句话说,Excel VBA编程会涉及到对象层次结构的处理。对于EXCEL本身,我们称之为应用程序对象;应用程序对象包含很多对象,例如,工作簿对象(Excel文件);工作簿对象中还包含其他对象,如工作表对象;工作表对象包含其他对象,例如Range对象。

1 对象层次结构的描述

我们在写代码的时候,其实利用的就是一种层次结构,如我们在“工作簿01.xlsm”程序文件中曾经利用过下面的代码:

Private Sub CommandButton1_Click()

学习"

End Sub

下面我们把Range("a1").Value = "VBA学习"这句代码来补充完整,写成如下:

Application.Workbooks("工作簿03.xlsm").Worksheets(1).Range("A1").Value = "VBA学习"


我们看下面的过程代码:

Sub mynz()

工作簿03.xlsm").Worksheets(1).Range("A1").Value = "VBA学习"

End Sub

我们来逐步解析一下代码:

1)Application 对象指的是EXCEL。

2)Application.Workbooks("工作簿03.xlsm")指的是EXCEL文件"工作簿03.xlsm".

3) Application.Workbooks("工作簿03.xlsm").Worksheets(1) 指的是EXCEL文件"工作簿03.xlsm".的Worksheets(1)工作表。

4)Application.Workbooks("工作簿03.xlsm").Worksheets(1).Range("A1") 指的是指的是EXCEL文件"工作簿03.xlsm".的Worksheets(1)工作表中"A1"的单元格。

5).Value 是指值的属性。

这样我们就了解了对象的层次结构。如果大家能看到我的高级教程《VBA中类的解读和应用》,其中我们对于这种层次结构会有更加详细的讲解。这里大家只需初步了解一下即可。

2 对象的集合结构

我们已经注意到,工作簿和工作表都是复数形式。那是因为它们是集合。工作簿集合包含当前打开的所有工作簿对象。“工作表”集合包含工作簿中的所有工作表对象。所以,在对象的层次结构中,集合是非常重要的概念。我们要想访问所有工作表对象,只需要在工作表集合中逐一访问即可,这种访问我们称之为“遍历”。

3 工作表对象的引用方法

为了引用工作表对象,我们可以通过三种方式:

1)使用工作表名称


如下面的代码:

Sub mynzA()

学习"

End Sub

这里我们通过引用工作表名称"Sheet1"来指向这个工作表。


2 使用索引号(1是从左边开始的第一个工作表)。


Sub mynzB() '使用索引号来引用工作表

学习"

End Sub

这里我们通过使用索引号来指向这个工作表。


  • 表示索引号的1,是不带引号的
    3使用工作表的CodeName

    Sub mynzC() '使用CODENAME来引用工作表
    学习"
    End Sub
    这里我们通过工作表的CodeName来指向这个工作表。所谓工作表的CodeName如VBE窗口中所示:
  • 注意:如果更改工作表名称或工作表顺序,CodeName将保持不变,因此这是引用工作表的最安全方法。单击“视图”、“属性”窗口可更改CodeName。有一个缺点,如果引用其他工作簿中的工作表,则不能使用CodeName。



今日内容回向:

1)什么是对象的层次结构?

2)如何引用一个工作表对象?

3) 如何理解对象的集合?



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

VBA之Excel应用第三章第一节:对象的层次结构_层次结构_03




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



VBA之Excel应用第三章第一节:对象的层次结构_表名_04









标签:03,VBA,对象,Excel,工作,层次结构,xlsm
From: https://blog.51cto.com/u_16912668/11939104

相关文章

  • 若依Excel导出
     @RestController@RequestMapping("/web/order/export")publicclassOrderExportControllerextendsBaseController{@GetMapping("/test")publicAjaxResultlistExportTest(){List<OrderExport>list=buildList();......
  • 基于Hutool技术Excel表格导出
    今天分享一下基于Hutool技术Excel表格导出,我们先看看导出Excel表格的样子第1步:引入maven依赖<dependencies><dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.3.3</version>&l......
  • Angular 导出Excel
    在Angular中导出Excel文件,可以使用第三方库如xlsx来处理Excel的生成和导出操作。以下是一个简单的步骤来实现从Angular项目中导出Excel文件。1.安装xlsx和file-saver在项目根目录下运行以下命令来安装所需的库:npminstallxlsxfile-saver--save2.在组件中......
  • 使用python读取excel数据(详解教程)
    使用Python读取Excel数据通常可以通过pandas库来实现。pandas提供了强大的数据处理功能,并且支持多种数据格式,包括Excel。下面是详细的代码讲解:目录1.安装必要的库2.读取Excel文件3.代码讲解1.导入库:2.指定文件路径和工作表名称:3.读取Excel文件:4.打印数据:......
  • 【VBA基础教程篇】Excel-VBA Debug调试相关操作
    Excel-VBADebug调试相关操作在工作窗口,上方菜单栏中,有一个专门的额菜单:Debug菜单,里面有debug相关操作。除此之外你也需要一些辅助窗口来帮助你更好的进行调试,1.Immediatewindow(立即窗口):类似其他IDE的console控制台。显示快捷键:Ctrl+G,也可以点击菜单栏View->Immediatewin......
  • VBA信息获取与处理第三个专题第二节:工作簿和工作表模块代码(Workbook And Sheet Modul
    《VBA信息获取与处理》教程(版权10178984)是我推出第六套教程,目前已经是第一版修订了。这套教程定位于最高级,是学完初级,中级后的教程。这部教程给大家讲解的内容有:跨应用程序信息获得、随机信息的利用、电子邮件的发送、VBA互联网数据抓取、VBA延时操作,剪贴板应用、Split函数扩展、......
  • python电梯厂企业固定资产管理系统excel数据导入 9327d
    目录博主介绍技术栈......
  • Excel制作“非闭合圆环图”稍难点
     ABC1区域增长率辅助列2北京18.39%81.61%3厦门20.89%79.11%4上海32.85%67.15%5山东44.53%55.47%6广州50.02%49.98%7黑龙江73.19%26.81%      (上述表格,是随便打出来的)      稍难点一:做出圆环 如上图,7个地区的圆环只能一个一个复制出来。首先在【插......
  • Navicat如何导出Excel格式的表结构
    第1步:打开Navicat,双击打开你要导出表结构的数据库,点击“查询”——“新建查询”第2步:将以下SQL语句复制粘贴进查询编辑器,并修改数据库名称与表名称SELECTCOLUMN_NAME列名,DATA_TYPE数据类型,CHARACTER_MAXIMUM_LENGTH长度,IS_NULLABLE是否为空,C......
  • 【工具使用】【EasyExcel 】EasyExcel 实现 Excel 作者信息、版本信息等的写入和读取
    1 前言导入的功能,想必大家都做过,大家肯定也都遇到过比如我的模板变化了(比如新增一列、删除一列等),客户在使用的时候可能还是用的老模板进行导入,那么我们在写代码的时候,应该怎么快速识别到呢?比如可以比较客户导入的Excel一列一列的去比较或者列的个数等是可以的。我想的一个......