Dzwebs.Net

撰写电脑技术杂文十余年

Excel编程基础之VBA变量常量定义及各种语句介绍

Admin | 2008-4-3 12:28:24 | 被阅次数 | 33998

温馨提示!

如果未能解决您的问题,请点击搜索;登陆可复制文章,点击登陆

一:变量与常量

  1:VBA允许使用未定义的变量,默认是变体变量。

  2:在模块通用说明部份,加入Option Explicit 语句可以强迫用户进行变量定义。

  3:变量定义语句及变量作用域

  Dim        变量名 as 类型   '定义为局部变量,如 Dim         ebookit as integer
  Private    变量名 as 类型   '定义为私有变量,如 Private    ebookit as byte
  Public     变量名 as 类型   '定义为公有变量,如 Public     ebookit as single
  Global    变量名 as 类型   '定义为全局变量,如 Globlal    ebookit as date
  Static      变量名 as 类型   '定义为静态变量,如 Static       ebookit as double

        一般变量作用域的原则是,那部份定义就在那部份起作用,模块中定义则在该模块那作用。

        4:常量为变量的一种特例,用Const定义,且定义时赋值,程序中不能改变值,作用域也如同变量作用域。如下定义:Const Pi=3.1415926 as single

二:判断语句

  1:If…Then…Else语句
  If condition Then [statements][Else elsestatements]
  如①:If A>B And C<D Then A=B+2 Else A=C+2
  如②:If x>250 Then x=x-100
  或者,可以使用块形式的语法:

  If condition Then
   [statements]
   [ElseIf condition-n Then
    [elseifstatements] ...
   [Else
    [elsestatements]]
  End If

  如1:
  If Number < 10 Then
      Digits = 1
  ElseIf Number < 100 Then
      Digits = 2
  Else
      Digits = 3
  End If
 
  2:Select Case…Case…End Case语句
  如1:
   Select Case Pid
    Case “A101”
    Price=200
    Case “A102”
    Price=300
    ……
    Case Else
    Price=900
   End Case

  3:Choose 函数
  choose(index, choce-1,choice-2,…,choice-n),可以用来选择自变量串列中的一个值,并将其返回,index 必要参数,数值表达式或字段,它的运算结果是一个数值,且界于 1 和可选择的项目数之间。choice 必要参数,Variant表达式,包含可选择项目的其中之一。

  如:
  GetChoice = Choose(Ind, "Speedy", "United", "Federal")

  4:Switch函数
  Switch(expr-1, value-1[, expr-2, value-2 _ [, expr-n,value-n]])
switch函数和Choose函数类似,但它是以两个一组的方式返回所要的值,在串列中,最先为TRUE的值会被返回。 expr 必要参数,要加以计算的 Variant 表达式。value 必要参数。如果相关的表达式为 True,则返回此部分的数值或表达式,没有一个表达式为 True,Switch 会返回一个 Null值。
 
三:循环语句

  1:For Next语句 以指定次数来重复执行一组语句
  For counter = start To end [Step step]                  ' step 缺省值为1
    [statements]
    [Exit For]
    [statements]
  Next [counter]
  如1:
  For Words = 10 To 1 Step -1                                 ' 建立 10 次循环
       For Chars = 0 To 9                                     ' 建立 10 次循环
           MyString = MyString & Chars          ' 将数字添加到字符串中
       Next Chars                                              ' Increment counter
       MyString = MyString & " "                        ' 添加一个空格
  Next Words
 
  2:For Each…Next语句  主要功能是对一个数组或集合对象进行,让所有元素重复执行一次语句
  For Each element In group
    Statements
   [Exit for]
    Statements
  Next [element]

  如1:
  For Each rang2 In range1
   With range2.interior
   .colorindex=6
   .pattern=xlSolid
   End with
  Next
  这上面一例中用到了 With…End With 语句,目的是省去对象多次调用,加快速度;语法为:
  With object
   [statements]
  End With
 
  3:Do…loop语句 在条件为true时,重复执行区块命令

  Do {while |until} condition            ' while 为当型循环,until为直到退出循环条件
    Statements
    Exit do
    Statements
  Loop

  或者使用下面语法
  Do               ' 先do 再判断
   Statements
   Exit do
   Statements
  Loop {while |until} condition


该杂文来自: Excel杂文

上一篇:Excel编程基础之VBA数据类型、数组、运算符等详解

下一篇:Excel编程基础之VBA其他错误语句及过程和函数介绍

网站备案号:

网站备案号:滇ICP备11001339号-7

版权属性:

Copyright 2007-2021-forever Inc. all Rights Reserved.

联系方式:

Email:dzwebs@126.com QQ:83539231 访问统计