VBA语法-基础语法

VBA语法

1.    基础语法

2.    控制结构

3.    数组

4.    过程

5.    模块

6.    处理字符串和日期

基础语法

4.2所有代码都在宏内如下:

Sub 宏名称()
'说明
…
End sub


单引号为注释

字符: a-z,A-Z,0-9,中文版excel还可以用中文

关键字:vbe中不区分大小写,输入完enter后,vbe自动将关键字转换为首字母大写

标识符:过程、常熟、变量、对象的名称

       首字符为字母或下划线;最长255字符;见名知意

4.3数据类型:

1.    Ineger   

2个字节 %声明字符

2.    Long   

 4个字节  &

3.    Single  

4个字节  !

4.    Double

 8个字节  #

5.    Currency

 8个字节 @

整型的数值形式,除以10000,给出一个定点数,左边15位,右边4位,single和double 浮点数比货币型有效范围大得多,有可能有误差,因此货币型用更多的字节保存数据,减少计算误差。

6.    Byte    

1个字节 0-255之间整数

7.    String   

双引号内

 "欢迎使用VBA"   ""      '空字符串
 Dim str1 as string    '变长字符2^31个字符
 Dim str2 as string*10 '定长2^16个支付,约64K


8.    Boolean

只有两个值True和False,当其他类型转换为布尔类型,0转为false,其他为true;布尔转换其他类型时,false为0 ,true为-1

9.    Date

支持复杂日期操作和运算,日期范围100年1月1日—9999年12月31日;时间从0:00:00 --- 23:59:59,

任何可辨认的文本日期都可赋值给date变量,以##括起来。如

#january1/1993#
#1 jan 93 #


日期型变量会根据计算机中短日期格式显示,时间根据计算机时间格式显示(12或24小时制)

其他数值类型转为日期型,小数点左边表示日期,右边表示时间;午夜为0,中午为0.5,负整数表示1899年12月30日之前

10.  Object

4个字节存储地址,必须用set语句赋值,结束后,赋值为nothing

Dim MyObject as object
Set myobject = worksheets(“sheet1”)
Set myobject = nothing


11.  Variant

可以为除定长string外所有类型,可用vartype或typename函数决定如何处理变体型数据

12.  自定义数据类型

Type
…
End type


必须放在模块或类模块声明部分

Type product
        Productname asstring
        库存量 as integer
        Price as currency
        Order as integer
End type
Sub test()
        Dim p1 asproduct
        With worksheets(“商品“)
               P1.productname= .cells(3,2)
               P1.库存量 = .cells(3,6)
               P1.price= .cells(3,7)
               P1.order= cells(3,8)
        End with
End sub


13.  枚举类型

默认情况下枚举第一个常数为0,后边比前边大1,也可直接= 赋值第一个为1

Public enum grade
        小学
        一年级
        二年级
End enum


 

4.4常数(直接常数,符号常数,系统常数)

日期自动按月/日/年表达

Const MAXCOL =255
Const MyInt asInteger = 5
Const BOOKNAME =“excel 从入门到精通“
Const BOOK = “microsoft”+ BOOKNAME


系统常数   控制对象的某些属性,用名称比用数字直观,有vb和应用程序的常数列表,常用大小写混合方式,前缀表示对象库名

如msgbox 用vbOKOnly比用0直观

XlWindowType xlWorkbook

可以在帮助中搜索常数查看,或对象浏览器

4.5变量

       dim 变量名[as 类型]

       optionexplicit

       作用域

       过程级dim声明

       模块级在开始部分用dim或private声明

       全局级别整个程序(各模块,过程)在开始部分public 声明

       生命周期

       一般生命周期与作用域相同,static静态变量,整个程序有效,但只在定义过程能访问,超过该过程不能访问

      

 Sub过程1()
     Dims1 as string
     S1= “hello world”
     Msgboxs1
Endsub
Sub过程2()
   Msgboxs1
Endsub

过程2 无显示

4.6运算符


字符连接运算

+连接两个都是字符

&强制为字符串连接

Msgbox “局部变量的值” &Il & vbNewLine & ”静态变量的值” & i2,vbOkOnly


很详细的VBA语法介绍: 一、VBA入门知识 。。。 二、了解对象、属性、方法和事件 1、了解对象、属性、方法和事件 2、Application 对象 3、Workbook 对象 4、Workbooks 属性 5、Range 对象 6、Range 属性 7、Cells 属性 。。。 三、VBA语法 (一)Visual Basic 的命名规则 1、写 Visual Basic 语句 2、写声明语句 3、Dim 语句的语法 4、Activate 方法的语法 5、Set 语句 3 6、MsgBox 函数的语法 7、选项语句的语法 8、AddressOf 运算符 9、了解变体 10、写赋值语句 11、写可执行的语句 12、Public 语句 13、Private 语句 14、使用数组 15、使用常数 16、AppActivate 语句 17、Beep 语句 19、Date 语句 20、Error 语句 21、Exit 语句 22、GoSub...Return 语句 23、GoTo 语句 24、Input # 语句 25、Let 语句 26、Load 语句 27、Name 语句 28、On...GoSub、On...GoTo 语句 29、Open 语句 30、Rem 语句 31、Stop 语句 32、Time 语句 33、While...Wend 语句 (二)逻辑语句 1、If...Then...Else 语句 2、使用 Select Case 语句 3、使用 For...Next 语句 4、For Each...Next 语句 5、 Do...Loop 语句 6、 With 语句 (三)过程 1、写 Sub 过程 2、写 Function 过程 3、写 Property 过程 四、 ActiveX 控件 1、AfterUpdate 事件 2、Click 事件 3、Click 事件、命令按钮控件、Accelerator 和 Caption 属性示例 4、DblClick 事件 5、Error 事件 6、KeyDown 和 KeyUp 事件 7、KeyPress 事件 8、KeyPress 事件示例 9、MouseDown 和 MouseUp 事件 10、MouseMove 事件 11、列表框控件 12、SpinDown 和 SpinUp 事件 13、SpinDown、SpinUp 事件和 Delay 属性示例 14、组合框控件 15、命令按钮控件 。。。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值