VBA对象模型(1)
关于对象和集合的比喻
Excel的基本单元是Workbook对象;在快餐连锁店中,基本的单元是单个餐馆。使用Excel可以添加工作簿和关闭工作簿,所有打开的工作簿组成了Workbooks集合(Workbook对象的集合)。快餐连锁店的经营者可以增加餐馆和关闭餐馆,可以将连锁店中的所有餐馆视为”餐馆”集合(“餐馆”对象的集合)。
一个Excel工作簿就是一个对象,但是它还包含有其它的对象,比如工作表对象、图表对象、VBA模块等。而且,工作簿中的每个对象可以包含它自已的对象,例如,一个Worksheet对象可以包含Range对象、PivotTable对象、Shape对象等。
一个餐馆(就象一个工作簿一样)是一个对象,它包含有其它的对象,比如”厨房”对象、”饭厅”对象、”餐桌”对象等。所有单个的这些对象组成了它们各自的集合,例如,餐馆中的所有餐桌组成了”餐桌”集合。经营者可以向“餐馆”对象中增加或从中去除对象,例如,经营者可以向“餐桌”集合中增加更多的餐桌。而且,餐馆中的每一种对象又都可以包含其它的对象,例如,“厨房”对象包含“火炉”对象、“排气扇”对象、“厨师”对象、“水池”对象等。
关于对象的属性和方法的比喻
Excel对象都有属性。例如,Range对象包括Value属性和Name属性,而Shape对象包括Width属性和Height属性等。与此类比,连锁店中的对象也有属性。例如,“火炉”对象包含诸如“温度”和“炉灶数目”这样的属性。“排气扇”对象也有它自已的一套属性(例如“转向”、“每分钟的转数”等)。
除了属性之外,Excel的对象还有方法,使用方法对对象执行某项操作。例如,ClearContents方法将清除Range对象的内容。连锁店中的对象也有方法,可以很容易想象,为“火炉”对象提供“调温器”方法,或者为“排气扇”对象提供“开/关”方法。
使用Excel的时候,方法有时候会改变对象的属性。ClearContents方法可以更改Range对象的Value属性。同样,“火炉”对象上的“调温器”方法将影响它的“温度”属性。
使用VBA可以编写过程来处理Excel对象。在连锁店中,经营者可以下命令处理餐馆中的对象(例如,打开火炉,将排气扇开到最快)。
VBA对象模型(1)的更多相关文章
- VBA对象模型(2)
Excel对象模型简介 在介绍Excel对象模型之前,让我们先来看一个简单的例子.大多数工厂都是按这样的结构进行设置的:最上层为工厂总部,第二层次分为各个车间,在车间下面又分各班组.就这样组织在一起, ...
- VBA对象模型
https://www.processon.com/view/link/5d974da6e4b07a0a4d4a098a
- VB 在Visio 2010 以编程方式创建子进程图
在2010年Visio以编程方式创建子进程图 Office 2010 https://msdn.microsoft.com/en-us/library/gg650651.aspx 简介: 学习如 ...
- Excel催化剂开源第51波-Excel催化剂遍历单元格操作性能保障
在Excel催化剂推出的这一年多时间里,经常性听到一种声音,大概意思是真正会写代码的人,都不会看上Excel催化剂写出来的功能,自己造一个更舒服贴心,仿佛会一点VBA就可以天下无敌一般,也好像Exce ...
- 个人永久性免费-Excel催化剂功能第33波-报表形式数据结构转标准数据源
一般来说,如果有标准的数据源结构,对后续的分析工作将会带来极大的方便.但现实中,许多的原始数据并不预期那样,一个主题的数据已经干净地存放在一个工作表中.今天Excel催化剂再次送上批量化操作,将不规则 ...
- 在VBA中使用Windows API
VBA是一种强大的编程语言,可用于自定义Microsoft Office解决方案.通过使用VBA处理一个或多个Office应用程序对象模型,可以容易地修改Office应用程序的功能或者能够使两个或多个 ...
- 浅谈Excel开发:三 Excel 对象模型
前一篇文章介绍了Excel中的菜单系统,在创建完菜单和工具栏之后,就要着手进行功能的开发了.不论您采用何种方式来开发Excel应用程序,了解Excel对象模型尤其重要,这些对象是您与Excel进行交互 ...
- MicroStation VBA 可视化界面
第十章 可视界面 Private Sub UserForm_Initialize() Dim ViewCen As Point3d Dim MyView As View For Each MyView ...
- 使用Win32::OLE操作Excel——Excel对象模型
像VBA操作Excel一样,Win32::OLE模块也是通过对象操作来控制Excel. 如果想自动化操作和控制Excel应用程序,则必须要与Excel对象模型所提供的对象进行交互.理解和熟悉Excel ...
随机推荐
- 2.建立exception包,建立Bank类,类中有变量double balance表示存款,Bank类的构造方法能增加存款,Bank类中有取款的发方法withDrawal(double dAmount),当取款的数额大于存款时,抛出InsufficientFundsException,取款数额为负数,抛出NagativeFundsException,
public class Bank { Double qian=0.0; double newBank(double a) { qian=qian+a; return qian; } double w ...
- 【leetcode❤python】 38. Count and Say
#-*- coding: UTF-8 -*- class Solution(object): def countAndSay(self, n): """ ...
- FreeSWITCH的传真发送
详细的学习请参考:https://wiki.freeswitch.org/wiki/Mod_spandsp 我只说说WIKI上没有直接写出来却又很实用的东西. 一.传真收发 环境大致如下: FreeS ...
- C# 创建一个日志文件
private static string m_fileName = "C:\\ErrorMsg.txt"; public static void CreateErrorLog(s ...
- Codeforces Round #158 (Div. 2) C. Balls and Boxes 模拟
C. Balls and Boxes time limit per test 1 second memory limit per test 256 megabytes input standard i ...
- iOS - UIViewController
前言 NS_CLASS_AVAILABLE_IOS(2_0) @interface UIViewController : UIResponder <NSCoding, UIAppearanceC ...
- For Exam (Java常用设计模式) 介绍
一 创建型模式 工厂模式(Factory): 定义一个用以创建对象的接口 抽象工厂模式(Abstract Factory): 提供一个创建一系列相关或相互依赖对象的接口 单例模式(Singleton) ...
- linux2.6内核compat_ioctl函数
一.内核原型(linux2.6.28-7) long (*compat_ioctl)(struct tty_struct *tty, struct file * file, ...
- Python学习笔记15—mysql的操作
安装 Python-MySQLdb pip install mysql-Python Python对mysql的操作 建立一个实验数据库demo mysql> create database d ...
- (一)S5PV210开发板常用易忘操作记录
一.调试串口 2.SD卡槽 (三)启动方式选择 蜂鸣器下面的白色2针插座(图中红色线圈出来的那个)为选择USB/SD卡启动的开关.默认情况下为SD卡启动,如果需要USB启动则使用短路帽(若没有短路帽, ...