Excel中的宏--VBA的简单例子

第一步:点击录制宏

Excel中的宏--VBA的简单例子

第二步:填写宏的方法名

Excel中的宏--VBA的简单例子

第三步:进行一系列的操作之后,关闭宏

第四步:根据自己的需要查看,修改宏

Excel中的宏--VBA的简单例子

第六步:保存,一般是另存为,后缀名为.xlsm,否则宏语言不能保存。

到此为止恭喜你一个简单的宏已经制作成功,当然宏也可以调用Excel中的公式,例如:sum等,排序,布局,查询,等。

Excel中常用对象的简单介绍:

800x600

Normal
0

7.8 磅
0
2

false
false
false

EN-US
ZH-CN
X-NONE

MicrosoftInternetExplorer4

/* Style Definitions */
table.MsoNormalTable
{mso-style-name:普通表格;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman","serif";}

对象名

含义

Application

代表整个 Excel 应用程序。

Window

代表窗口

Worksheet

代表一个工作表

Sheets

指定的或活动工作簿中所有工作表的集合

ShapeRange

代表形状区域,它是文档中的一组形状

PivotTable

代表工作表上的数据透视表

Workbook

代表一个 Excel 工作簿

Shape

代表绘图层中的对象,例如自选图形、任意多边形、OLE 对象或图片

Range

代表某一单元格、某一行、某一列、某一选定区域,或者某一三维区域

Name

代表单元格区域的定义名。名称可以是内置名称(如Print_Area)或自定义名称

Chart

代表工作簿中的图表

FileDialog

提供文件对话框,其功能与 Office 应用程序中标准的“打开”和“保存”对话框类似

CommandBarPopup

代表命令栏上的一个弹出式控件

CommandBar

代表容器应用程序中的一个命令栏

workSheet工作薄的方法

800x600

Normal
0

7.8 磅
0
2

false
false
false

EN-US
ZH-CN
X-NONE

MicrosoftInternetExplorer4

/* Style Definitions */
table.MsoNormalTable
{mso-style-name:普通表格;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman","serif";}

名称

说明

Add

新建工作表、图表或宏表。新建的工作表将成为活动工作表

Copy

将工作表复制到工作簿的另一位置

Delete

删除对象

FillAcrossSheets

将单元格区域复制到集合中所有其他工作表的同一位置

Move

将工作表移到工作簿中的其他位置

PrintOut

打印对象

PrintPreview

按对象打印后的外观效果显示对象的预览

Select

选择对象

800x600

Normal
0

7.8 磅
0
2

false
false
false

EN-US
ZH-CN
X-NONE

MicrosoftInternetExplorer4

/* Style Definitions */
table.MsoNormalTable
{mso-style-name:普通表格;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman","serif";}

算术运算符

运算符

功能

^

求一个数字的某次方,如 A^B

*

乘法运算

/

除法运算

\

对两个数作除法并返回一个整数

Mod

求两数的余数

+

加法运算

-

减法运算

比较运算符

符号

功能

<

小于

<=

小于或等于

>

大于

>=

大于或等于

=

等于

<>

不等于

逻辑运算符

符号

功能

And

用来对两个表达式进行逻辑连接

Eqv

用来对两个表达式进行逻辑等价运算

Imp

用来对两个表达式进行逻辑蕴涵运算

Not

用来对表达式进行逻辑否定运算

Or

用来对两个表达式进行逻辑析取运算

Xor

用来对两个表达式进行逻辑互斥或运算

800x600

Normal
0

7.8 磅
0
2

false
false
false

EN-US
ZH-CN
X-NONE

MicrosoftInternetExplorer4

/* Style Definitions */
table.MsoNormalTable
{mso-style-name:普通表格;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman","serif";}

字符串处理函数

作用

关键字

Option Compare

设置字符串比较规则

StrComp

比较两个字符串(字符相似判断)

StrConv

字符串类型转换

Lcase、Ucase

大小写变换

Spase、String

重复字符串

Len

计算字符串长度

Format

设置字符格式

LSet、Rset

重排字符串

InStr、Left、Ltrim、Mid、Right、Rtrim、Trim

处理字符串

Split、Join

拆分与联接字符串

800x600

Normal
0

7.8 磅
0
2

false
false
false

EN-US
ZH-CN
X-NONE

MicrosoftInternetExplorer4

/* Style Definitions */
table.MsoNormalTable
{mso-style-name:普通表格;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman","serif";}

VBA的数据类型

数据类型

存储空间大小

范围

Byte

1 个字节

0 到 255

Boolean

2 个字节

True 或 False

Integer

2 个字节

-32,768 到 32,767

Long(长整型)

4 个字节

-2,147,483,648 到 2,147,483,647

Single(单精度浮点型)

4 个字节

负数时从 -3.402823E38 到 -1.401298E-45;正数时从 1.401298E-45 到 3.402823E38

Double(双精度浮点型)

8 个字节

负数时从 -1.79769313486231E308 到

Currency(变比整型)

8 个字节

从 -922,337,203,685,477.5808 到
922,337,203,685,477.5807

Decimal

14 个字节

没有小数点时为 +/-79,228,162,514,264,337,593,543,950,335,而小数点右边有 28 位数时为
+/-7.9228162514264337593543950335;最小的非零值为 +/-0.0000000000000000000000000001

Date

8 个字节

100 年1月1日到9999年12月31日

Object

4 个字节

任何 Object 引用

String(变长)

10 字节加字符串长度

0 到大约 20 亿

String(定长)

字符串长度

1 到大约 65,400

Variant(数字)

16 个字节

任何数字值,最大可达 Double 的范围

Variant(字符)

22 个字节加字符串长度

与变长 String 有相同的范围

用户自定义

所有元素所需数目

每个元素的范围与它本身的数据类型的范围相同。

800x600

Normal
0

7.8 磅
0
2

false
false
false

EN-US
ZH-CN
X-NONE

MicrosoftInternetExplorer4

/* Style Definitions */
table.MsoNormalTable
{mso-style-name:普通表格;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman","serif";}

数据类型的转换

800x600

Normal
0

7.8 磅
0
2

false
false
false

EN-US
ZH-CN
X-NONE

MicrosoftInternetExplorer4

/* Style Definitions */
table.MsoNormalTable
{mso-style-name:普通表格;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman","serif";}

函数

返回类型

expression
参数范围

CBool

Boolean

任何有效的字符串或数值表达式

CByte

Byte

0
至 255

CCur

Currency

-922,337,203,685,477.5808
至922,337,203,685,477.5807

CDate

Date

任何有效的日期表达式

CDbl

Double

负数从 -1.79769313486231E308 至
-4.94065645841247E-324;正数从 4.94065645841247E-324 至
1.79769313486232E308

CDec

Decimal

零变比数值,即无小数位数值,为+/-79,228,162,514,264,337,593,543,950,335。对于 28 位小数的数值,范围则为+/-7.9228162514264337593543950335;最小的可能非零值是
0.0000000000000000000000000001。

CInt

Integer

-32,768
至 32,767,小数部分四舍五入

CLng

Long

-2,147,483,648
至 2,147,483,647,小数部分四舍五入

CSng

Single

负数为 -3.402823E38 至 -1.401298E-45;正数为 1.401298E-45 至 3.402823E38

CStr

String

依据 expression 参数返回 Cstr

CVar

Variant

若为数值,则范围与 Double 相同;若不为数值,则范围与 String 相同

方法参数介绍

800x600

Normal
0

7.8 磅
0
2

false
false
false

EN-US
ZH-CN
X-NONE

MicrosoftInternetExplorer4

/* Style Definitions */
table.MsoNormalTable
{mso-style-name:普通表格;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman","serif";}

部分

功能详解

Optional

可选的。表示参数不是必需的关键字。如果使用了该选项,则 arglist 中的后续参数都必须是可选的,而且必须都使用 Optional 关键字声明。如果使用了 ParamArray,则任何参数都不能使用 Optional

ByVal

可选的。表示该参数按值传递

ByRef

可选的。表示该参数按地址传递。ByRef 是 Visual Basic 的缺省选项

ParamArray

可选的。只用于 arglist 的最后一个参数,指明最后这个参数是一个 Variant 元素的 Optional 数组。使用 ParamArray 关键字可以提供任意数目的参数。ParamArray 关键字不能与 ByVal,ByRef,或 Optional 一起使用

varname

必需的。代表参数的变量的名称;遵循标准的变量命名约定

type

可选的。传递给该过程的参数的数据类型,如果没有选择参数 Optional,则可以指定用户定义类型,或对象类型

defaultvalue

可选的。任何常数或常数表达式。只对 Optional 参数合法。如果类型为 Object,则显式的缺省值只能是 Nothing

简单宏例子:

Sub 宏1()
'
' 宏1 宏
' '
Sheets("Sheet2").Select
ActiveWindow.SmallScroll Down:=-
Range("A1").Select
ActiveCell.FormulaR1C1 = "第一步:点击录制宏"
Range("A43").Select
ActiveCell.FormulaR1C1 = "第二步:填写宏的方法名"
Range("C45").Select
ActiveSheet.Paste
ActiveWindow.SmallScroll Down:=
Sheets("Sheet1").Select
ActiveWindow.SmallScroll Down:=-
Range("C3").Select
End Sub
Sub 宏2()
'
' 宏2 宏
'
Range("B14").Select
ActiveCell.FormulaR1C1 = "=SUM(R[-13]C:R[-1]C)"
End Sub

到此为止VBA的介绍已经完成,VBA中的语法与VB的语法基本上一样,也许会有版本不懂略有差别。

800x600

Excel有数百个对象,表4-1是常见对象名称其及含义

Normal
0

7.8 磅
0
2

false
false
false

EN-US
ZH-CN
X-NONE

MicrosoftInternetExplorer4

/* Style Definitions */
table.MsoNormalTable
{mso-style-name:普通表格;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman","serif";}

上一篇:【Java】模拟Sping,实现其IOC和AOP核心(一)


下一篇:SWT中的GridLayout(转)例子不错