VBA基础1-循坏

  • 除法
    \整除
    ?8\16
    0
    /除
    ?8/16
    0.5

  • 逻辑运算符

运算符例句结果
Not 非?not truefalse
and 与?True and falsefalse
xor 异或1 xor 01
or 或?true or falseTrue
eqv 相等
imp 隐含

Xor—相同为false,不同为true。

  • 数据类型
数据类型类型标识符字节
字符串型string$(0-65400)
字节型 Byte1
布尔型Boolean2
整数型Interger%2
长整型 Long&4
单精度型 single4
双精度型 double#8
日期型date8公元100\ 1\1-99\12\31
货币型 currency@8
小数点型Decimal14
变体型Variant以上任意类型,可变
对象型 Object4
关键字类型
dim局部变量
Private私有变量
public公有变量
Global全局变量
static静态变量
const常量

eg:Const Pi=3.1415926 as single

  • 数组
    Dim 数组名([lower to ]upper [, [lower to ]upper, ….]) as type ;Lower缺省值为0。
    如下例:
    Dim array1() as double :
    Redim array1(5) :
    array1(3)=250 :
    Redim preserve array1(5,10)
  • 书写规范
    (1)VBA不区分标识符的字母大小写,一律认为是小写字母;
    (2)一行可以书写多条语句,各语句之间以冒号 : 分开;
    (3)一条语句可以多行书写,以空格加下划线 _ 来标识下行为续行;
    (4)标识符最好能简洁明了,不造成歧义。
  • 判断语句
  1. If…then…elseif…then…else……endif
eg:
If Number < 10  Then
     Digits = 1
ElseIf Number < 100  Then
     Digits = 2
Else
     Digits = 3
End If
eg:
Sub if_()
Dim num As Integer
num = Cells(2, 1)
If num < 10 Then
    Cells(1, 2) = "less than 10"
ElseIf num = 10 Then
    Cells(2, 2) = "equal 10"
Else
    Cells(3, 2) = "more than 10"
End If
End Sub
  1. Select Case…case…case…end select
eg:
Select Case  Pid
   Case  “A101”
   Price=200
   Case  “A102”
   Price=300
   ……
   Case Else
   Price=900
End Case
Sub case_()
Select Case Sheet1.Range("A1")
    Case "100"
    Cells(4, 1) = 100
    Case "200"
    Cells(5, 1) = 200
    Case Else
    Cells(6, 1) = 300
End Select
End Sub
  1. choose函数
    choose(index,choce-1,choose-2,choose-3,……,choose-n)
在这里插入代码片
  1. switch函数
  • 循坏语句
  1. for next 语句 以指定次数来重复执行一组语句
    for counter=start to end [step step]
    [statements]
    [exit for]
    [statements]
    next [counter]
Sub for_next()
Dim x As Integer, j%
For x = 10 To 1 Step -1
    For j = 0 To 2
        mystring = mystring & j
    Next j
    mystring = mystring & ""
    Cells(x, 4) = mystring
Next x
End Sub
  1. for each ……next 主要功能是对一个数组或集合对象进行,让所有元素重复执行一次语句
    for each element in group
    [statements]
    exit for
    [statements]
    next element
Sub for_each()
' Dim wrk As Worksheets
For Each wks In Worksheets
    MsgBox "工作表的名称是:" & wks.Name
Next wks
End Sub
  1. do ……loop 在条件为true时,重复执行区块命令
    Do { While | Until } condition
      [ statements ]
      [ Continue Do ]
      [ statements ]
      [ Exit Do ]
      [ statements ]
    Loop
    或者
    Do { While | Until } condition
      [ statements ]
      [ Continue Do ]
      [ statements ]
      [ Exit Do ]
      [ statements ]
    Loop {while|until} condition
Sub do_()
Dim index As Integer
Dim Stri1
index = 1
Do While index <= 100
    If index > 10 Then
        Exit Do
    End If
    Stri1 = Stri1 & index
    Cells(index, 2) = Stri1
    index = index + 1
Loop
End Sub
  1. while 语句
    While conditions
    [statements]
    Wend
Sub while_()
Dim d As Integer
d = 5
While d < 10:
    strin = strin & d
    Debug.Print strin
    d = d + 2
Wend
End Sub
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值