Excel VBA高效办公应用-第二章-Excel VBA编辑基础-Part1(VBA关键字)
2017-06-08 17:10
501 查看
VBA常用关键字有:
And
Arrary
As
Binary
Boolean
Byref
Byval
Case
Currency
Date
Dim
Do
Double
Else
Empty
End
Error
Exit
False
For
Friend
Get
Imp
Input
Integer
Is
Len
Let
Lock
Long
Loop
Me
Mid
Mod
New
Next
Nothing
Null
Object
On
Open
Option
Optional
Or
ParamArray
Print
Private
Property
Public
Result
Resume
Run
Seek
Select
Selection
Set
Static
Step
String
Sub
Then
Time
To
True
Type
Until
Variant
With
WithEvents
Xor
有没有人认识以上所有关键字的?请受我一拜。
反正我又好几个不懂的,特此学习一番:
1. Byval和Byref的区别(引用内容:http://club.excelhome.net/thread-735621-1-1.html)
可以很简明的描述这两者的区别的:
Function TestA(ByVal intI As Integer)
intI = intI + 10
TestA = intI
End Function
Function TestB(ByRef intI As Integer)
intI = intI + 10
TestB = intI
End Function
Sub ByrefCompareToByvals()
Dim intA As Integer
Dim intB As Integer
intA = 10
intB = 10
Debug.Print "1--ByVal "
Debug.Print "运算前:" & intA
Debug.Print "运算结果:" & TestA(intA)
Debug.Print "参与运算后:" & intA
Debug.Print "1--ByRef "
Debug.Print "运算前:" & intB
Debug.Print "运算结果:" & TestB(intB)
Debug.Print "参与运算后:" & intB
End Sub
===============================
'1--ByVal
'运算前:10
'运算结果:20
'参与运算后:10
'
'1--ByRef
'运算前:10
'运算结果:20
'参与运算后: 20
===============================
从例子上就看出来了:
ByVal 传送参数内存的一个拷贝给被调用者。源数据不会被修改
ByRef 传送参数内存的实际地址给被调用者。源数据可能被修改
2. Friend关键字 (引用自:http://www.excelba.com/Art/Html/159.html)
虽然在VBA中几乎没有什么用,但如果有一天你要制作ActiveX部件,可能会用到它。之所以要有Friend关键字,是因为类的私有部分在类模块外是不可见的,但有时却需要从外面访问这些私有部分,这时,可以使用Friend关键字使属性和方法成为“友元成员”。友元成员在本工程中相当于Public,但在工程外,它仍是Private 。
还有几个,有点累了,留到以后再学习。
And
Arrary
As
Binary
Boolean
Byref
Byval
Case
Currency
Date
Dim
Do
Double
Else
Empty
End
Error
Exit
False
For
Friend
Get
Imp
Input
Integer
Is
Len
Let
Lock
Long
Loop
Me
Mid
Mod
New
Next
Nothing
Null
Object
On
Open
Option
Optional
Or
ParamArray
Private
Property
Public
Result
Resume
Run
Seek
Select
Selection
Set
Static
Step
String
Sub
Then
Time
To
True
Type
Until
Variant
With
WithEvents
Xor
有没有人认识以上所有关键字的?请受我一拜。
反正我又好几个不懂的,特此学习一番:
1. Byval和Byref的区别(引用内容:http://club.excelhome.net/thread-735621-1-1.html)
可以很简明的描述这两者的区别的:
Function TestA(ByVal intI As Integer)
intI = intI + 10
TestA = intI
End Function
Function TestB(ByRef intI As Integer)
intI = intI + 10
TestB = intI
End Function
Sub ByrefCompareToByvals()
Dim intA As Integer
Dim intB As Integer
intA = 10
intB = 10
Debug.Print "1--ByVal "
Debug.Print "运算前:" & intA
Debug.Print "运算结果:" & TestA(intA)
Debug.Print "参与运算后:" & intA
Debug.Print "1--ByRef "
Debug.Print "运算前:" & intB
Debug.Print "运算结果:" & TestB(intB)
Debug.Print "参与运算后:" & intB
End Sub
===============================
'1--ByVal
'运算前:10
'运算结果:20
'参与运算后:10
'
'1--ByRef
'运算前:10
'运算结果:20
'参与运算后: 20
===============================
从例子上就看出来了:
ByVal 传送参数内存的一个拷贝给被调用者。源数据不会被修改
ByRef 传送参数内存的实际地址给被调用者。源数据可能被修改
2. Friend关键字 (引用自:http://www.excelba.com/Art/Html/159.html)
虽然在VBA中几乎没有什么用,但如果有一天你要制作ActiveX部件,可能会用到它。之所以要有Friend关键字,是因为类的私有部分在类模块外是不可见的,但有时却需要从外面访问这些私有部分,这时,可以使用Friend关键字使属性和方法成为“友元成员”。友元成员在本工程中相当于Public,但在工程外,它仍是Private 。
还有几个,有点累了,留到以后再学习。
相关文章推荐
- Excel VBA高效办公应用-第二章-Excel VBA编辑基础-Part2(VBA的数据类型)
- Excel VBA高效办公应用-第二章-Excel VBA编辑基础-Part4(VBA控制语句)
- Excel VBA高效办公应用-第二章-Excel VBA编辑基础-Part3(Is, Like运算符的用法详解)
- Excel VBA高效办公应用-第七章-VBA财务报表分析-Part1 (损益表的分析)
- Excel VBA高效办公应用-第八章-商品销售决策与分析-Part1 (商品销售方式决策)
- Excel VBA高效办公应用-第十一章-教师员工数据管理-Part1 (教师考核评测数据处理)
- Excel VBA高效办公应用-第十二章-工资表的录入与工资表的建立-Part1 (工资表的录入)
- Excel VBA高效办公应用-第六章-客户资料管理-Part1 (窗口冻结及排序)
- Excel VBA高效办公应用-第十章-高效处理学员资料-Part1 (成绩排名)
- Excel VBA高效办公应用-第十三章-工资条与工资查询-Part1 (制作工资条)
- Excel VBA高效办公应用-第五章-销售数据的处理与分析-Part1(自动插入多张图表)
- Excel VBA高效办公应用-第六章-客户资料管理-Part2 (简单查询功能的VBA实现及记录单功能)
- Excel VBA高效办公应用-第十六章-VBA高效文件操作(使用级联菜单管理多个工作簿)
- Excel VBA高效办公应用-第九章-VBA文秘办公技巧-Part1 (每日行程安排提醒)
- Excel VBA高效办公应用-第六章-客户资料管理-Part3 (对筛选结果进行统计)
- Excel VBA高效办公应用-第十章-高效处理学员资料-Part2 (考勤记录表)
- Excel VBA高效办公应用-第十七章-用户权限管理系统
- Excel VBA高效办公应用-第七章-VBA财务报表分析-Part3 (现金流量表分析)
- Excel VBA高效办公应用-第八章-商品销售决策与分析-Part2 (商品分期付款决策)
- Excel VBA高效办公应用-第十四章-Excel图书管理系统