来源:http://blog.csdn.net/aspstu/
* {+ `) q8 C* O. V- d8 E- {3 |/ U语句 Call
3 r3 h+ R( ?& B5 q" }( k/ \[call] name [argumentlist]
把控制转移到函数或子程序。当调用函数或子程序时,Call是可写可不写的。但是如果你用了Call,那么argumentlist必须用括号括起来。
Const
, N* Z, [1 c5 P7 ~. | K2 P) x9 r8 E8 F[Public | Private] Const constantname=expression
用于申明常数。你可以在一行里申明多个常数,此时你必须用逗号把常数赋值语句隔开。
/ G. ?% p5 |) Q9 U# P( rDim
Dim varname[ ( [subscripts])][, varname [( [subscripts])]...
创建一个新变量并且分配存储空间。
DO . . . LOOP
语法 1:
7 i8 ^" {0 j' u, UDo [{While | Until } condition ]
[statements]
8 f$ R: ?& L% A2 |[Exit Do]
[statements]
+ R" t& ^& w1 Y* j+ X8 o( xLOOP
语法 2:
1 I0 w# K) ^7 F8 P( nDo
/ v7 x$ l# d2 m[statements]
+ g( s5 ~! Q* H& Z% C( V- s7 ?7 l[Exit Do]
( N6 h+ b2 T9 N7 Z( ~/ I f[statements]
( i. R( Q! N/ C1 o" dLOOP [{While | Until } condition ]
当条件condition为真时或直到条件condition为真时,两种形式都重复执行语句。
5 N) ` S" f$ m. K: oErase
Erase array
5 ?/ J `( p, g! v" s( J清理数组,对于固定长度的数组,重新初始化元素;对于动态数组,重置存储空间。
' {; G/ t& a( v E p5 y3 kExit
Exit Do
退出一个 DO . . . LOOP 循环。
Exit For
1 o4 {/ [7 V( T/ J退出一个 For . . . Next 循环或For Each . . . Next循环。
Exit Function
退出一个 函数。
, m* i' {8 C/ u- |0 sExit Sub
5 g7 E% o L* |- v0 C) H; o6 Y9 F退出一个子程序。
0 {; k9 e- [' uFor . . . Next
4 J0 I1 S2 w8 |8 y" P2 X5 hFor counter = start To End [Step step]
[statements]
# T+ c V) N w[Exit For]
[statements]
! g+ `' i1 ^6 Z& jNext
* M2 L1 i" h/ e' J7 D& \( U由loop 计数器指定的次数重复执行statements语句群。
: k8 [& D) z/ B* c9 r, QFor Each . . . Next
For Each element In group
5 z+ C7 J0 u' I3 f[statements]
! G- i- k% c- F; S% n[Exit For]
$ y2 y z' I& O% b# i- g& W& S' V[statements]
Next [element]
对于每一个在数组或集合中的元素,重复执行statements语句群。
Function
[Public | Private] Function name [(arglist)]
2 j2 v! N3 c9 j" P/ i) {1 l[statements]
[name=expression]
[Exit Function]
[statements]
[name=expression]
# f) j( a! `& l$ eEnd Function
& X5 u8 D* a- z) i定义一个函数,指明函数名,参数及代码。
If . . . Then . . . Else
语法1:
, ~+ v5 K: _$ s0 s! @( I6 S5 _5 _If condition Then statements [Else elsestatements]
7 h9 B9 r* A2 I5 A语法2:
( f+ k$ G" t! x$ G. ~- g r) ^If condition Then
statements
9 G3 F, H8 x; O3 e[ElseIf condition-n Then
[elseifstatements]] . . .
[Else
[elsestatements]]
8 J$ y9 G$ V# [8 e8 U" @End If
/ W" P9 D7 s6 I" X两种格式都条件执行一系列语句。
, O1 j( [0 d+ B) R0 Y @0 C D. j$ zOn Error
On Error Resume Next
当一个错误发生时,这条语句就执行紧靠发生错误语句后面的语句,或者执行紧靠调用进程后面的语句。
# Q( M" }* Q; w7 M4 fOption Explicit
- [. Z5 O; K) _, YOption Explicit
7 O r& d/ z( ^6 D7 A+ f( N6 L8 i在使用变量之前强制明确定义该变量,可以用Dim,Private,Public或 ReDim语句定义变量。
/ Q8 a0 ^% ^) T# }# _Private
Private varname[([下标])][, varname[([下标])] . . .
. X" T, D) I5 v7 E创建私有变量并且分配存储空间。(私有变量只能在定义该变量的脚本中可用)
7 Y& {( n0 P, M' K. lPublic
Public varname[([下标])][, varname[([下标])] . . .
+ @/ e, u+ h/ { z: T创建公有变量并且分配存储空间。(公有变量在程序的任何地方均可使用)
Randomize
Randomize [number]
' F9 N) B; s5 H; O3 Z2 x4 s% V) `) K给Rnd函数的随机数发生器一个新种子值。
ReDim
ReDim [Preserve] varname(subscripts)[, varname(subscripts)] . . .
( v( s" j3 h/ B; S修改维的下标,大小;或重置动态数组的大小。Preserve 保护已存数组的数据。
, Z9 _- Z7 H+ {) W0 FRem
3 h: b1 h \% r语法1:
Rem comment
1 x" q1 E- ~" c" {1 X语法2:
2 W! A0 D) K, R0 l5 s' Q‘comment
6 ]5 Z+ ^$ Z" S$ y; \这两种语句形式都能使注释的句子不被处理。如果Rem和其它语句在同一行上,Rem 语句必须在后且二者之间必须用冒号隔开。
( t3 j6 H9 N* l5 B/ n, i' FSelect Case
Select Case testexpression
" D2 T; i5 u" a! ^3 P J) T5 { M[Case expressionlist-n
- \- {. \; N5 j" y[statements-n]] . . .
[Case Else expressionlist-n
4 p' A# J# Z) Q0 B) S. z( ^[elsestatements-n]]
End Select
2 f/ Q3 e1 `+ b( l) I如果某一个expressionlist 和testexpression 匹配,则执行和expressionlist对应的语句;如果没有一个expressionlist 和testexpression 相匹配,则执行和Case Else 相对应的语句。
0 |8 j3 J7 z: LSet
Set obectvar= {objectexpression | Nothing}
& [( h: w* R( G* C' \6 n赋予一个变量或一个性质对象引用。当赋予的值为Nothing 时,使obectva 和任何以前指明的对象解除关系。
& T+ k1 ?; T6 p2 H4 \2 @Sub
[Public | Private] Sub name [(arglist)]
( \$ z) Z0 [$ C5 U+ Q[statements]
" Y, Y. ~* w0 q) ^8 @[Exit Sub]
6 v. K. J* z7 `" l; Z[statements]
5 D7 O' [9 u, ]- G% Q( J. H$ ?1 IEnd Sub
定义一个子程序,指明名称,参数及代码。
While . . . Wend
While condition
0 _# r, f$ F" R4 l1 y8 ~4 X: i[statements]
Wend
不停地连续执行语句statements 直到条件condition为True。
/ O( l t2 i6 I R1 v+ p/ z6 ?6 n5 h3 _" g4 }
| 欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) | Powered by Discuz! X2.5 |