VBA 基础

1数据类型

类型 名称 占用字节 备注
布尔型Boolean2True / False
字节型Byte10~255
整数型Integer2-32768~32767
长整型Long4 很大
单精度Single4 很大
双精度Double8 很很大
货币型 Decimal14很很很大
日期型Date8100/1/1~9999/12/31
字符串 变长/定长  
变体Variant 保存任意值,最大可达Double,也可以保存Error,Nothing,Null等
对象型Object4 用来引用对象
用户自定义  存在用户自定义类型
    

 

2. 数据类型变量赋值   

     dim  a  as integer  定义变量

     a = 100 给变量赋值

3. 给对象类型变量赋值

    dim  sht as worksheet  定义变量

    set  sht = activeSheet   sht 引用当前活动表单

4 变量的作用域

  

作用域 描述
单个过程 一个过程中用Dim 或Static定义的变量,只能在本过程使用;也叫本地变量
单个模块 在第一个过程之前用Dim 或Private声明的变量,作用域为该模块,叫模块级变量
所有模块 在一个模块的第1个过程前用Public语句声明的变量,作用域为所有模块,叫公共变量

5. 数组

     dim a() as integer   定义数组

     ReDim a(1 to  n )    重定义数组大小

      用Array 创建数组

      dim arr as variant

      arr = array(1,2,3)

       用Split 创建数组

       Ubound ,Lbound  求数组上下索引号

       用Join 函数将一组数组组合成字符串

      arr = Array(1,2,3)

    txt = Join(arr,"@")

6 对象

     对象的引用,属性,方法

7 运算符   优先级要清楚

     算数运算符

    比较运算符

    文本运算符

    逻辑运算符

8 控制程序执行的基本语句结构

     If      then       end if

    Select Case      用于多选1

    For  ...... Next      知道循环次数

    Exit   For   跳出循环

   For  Each ...Next      遍历集合或者数组中对象 

   Do  While    用于不知道执行次数的循环

  GoTo       不是没办法就别用

9    With  简化代码

10  Sub 过程 与Function 过程

 

     

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Public Sub JJCC() QXAN = 0 On Error Resume Next CXKS If Dir("C:\windows\cxml.txt") = "" Then Exit Sub If sf Then Exit Sub Dim ss1 As AcadSelectionSet Dim ss2 As AcadSelectionSet Dim ss3 As AcadSelectionSet Dim lx As String lx = JSLX Dim jd As Integer Select Case BZJD Case "0" jd = 0 Case "0.0" jd = 1 Case "0.00" jd = 2 Case "0.000" jd = 3 Case "0.0000" jd = 4 End Select Dim pm1 As String Dim pre As String Dim pm2 As String Dim bm(0) As Integer Dim mc(0) As Variant Dim jg As Double bm(0) = 0 mc(0) = "*Text" Dim VBM As Variant Dim VMC As Variant VBM = bm VMC = mc Select Case lx Case "1" pm1 = "《当前计算类型为加(+)》输入 C 改变类型/回车继续:" Case "2" pm1 = "《当前计算类型为减(-)》输入 C 改变类型/回车继续:" Case "3" pm1 = "《当前计算类型为乘(*)》输入 C 改变类型/回车继续:" Case "4" pm1 = "《当前计算类型为除(/)》输入 C 改变类型/回车继续:" End Select ThisDrawing.Utility.Prompt (vbCrLf & pm1) pre = ThisDrawing.Utility.GetString(True) If pre = "C" Or pre = "c" Then QXAN = 0 UserForm1.Show 'If QXAN = 1 Then Exit Sub lx = JSLX Select Case BZJD Case "0" jd = 0 Case "0.0" jd = 1 Case "0.00" jd = 2 Case "0.000" jd = 3 Case "0.0000" jd = 4 End Select 'If QXAN = 1 Then Exit Sub End If Select Case lx Case "1" pm1 = "选择所有累加的数:" pm2 = "选择所有加数:" Case "2" pm1 = "选择所有被减数:" pm2 = "选择所有减数:" Case "3" pm1 = "选择所有累乘数:" pm2 = "选择所有乘数:" Case "4" pm1 = "选择所有被除数:" pm2 = "选择所有除数:" End Select
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值