VBS基本语法

休闲灌水
0 18687
aland-1415 aland-1415 10月05日 15:51
普通会员 积分:0

 

一、初识VBS

Vbs       是一种变量无关、解释性执行的脚本语言。vbs语言中不区分大小写。语句以换行结束。

dim        声明变量;批量名称声明,多个变量之间用逗号分隔:

set          赋值;

rem       注释,同 '

msgbox(prompt,buttons,title,helpfile,context)   输出 msgbox(s) 把两个不同的内容一起输出时用“+”连接

       prompt   显示的字符串,最大为1024字符,如果换行用回车换行符组合 chr(13)&chr(10)       buttons 默认值为0,为显示按钮值的参数

       title标题,如果省略则交应用程序的名称显示在标题栏中;

       helpfile字符串表达式,用于标识为对话框提供上下文相关帮助文件,如果提供了helpfile,则必须提供context

       context   数值表达式,用于标识某个帮助文件的编号,必须与helpfile一起使用;

inputbox(msg,"title","wow~") '第一参数为显示语句,最大长度为1024;第二为框体名称,第三为默认输入内容

msgbox的返回值有1-7七个数,依次来自:确定、取消、放弃、重试、忽略、是、否;

 

二、数据类型

vbs中只有一个基本数据数据类型 Variant,variant中包含integer等子类型,用VarType()函数可返回数据的子类型的对应值;使用typename(对象)也可返回子类型;

子类型有:

byteinteger,long,single,duble,currency(货币值),decimal,date,string,boolean,empty(未初始化),null(无有效数据),object(一般对象),unknown,nothing(还未引用对象实例的对象变量)error

 

const        声明常量;也可用Private或者Public来改变变量的公有和私有属性;

dim A(10)      11元素数组,赋值A(2)=1,二维数组:B(2,2) 单点赋值B(1)(2)'数组最高可为60

 

变量的命名规则:

1、第一个字符必须是字母;

2、不能包含嵌入句点的语句;

3、长度不能超过255个字符;

4、在被声明的作用域内必须唯一;

 

三、运算符

1、算术运算符

+    

-    

*     

/     

\      整除

mod      取余(%

^    

&    字符串连接,字符串即用“”包围的内容

2、比较运算符

=     等于

<>  不等于

<     小于

>     大于

<=  小于等于

>=  大于等于

Is     对象引用比较

3、逻辑运算符

not    

and  

or     

xor    异或

eqv      等价

imp  隐含

 

四、控制结构

1、条件语句:

if...then
...else 
if...then
...else
...
end if
select case
    ..
    case
    .. ...
    case
    .. ...
    case else
    ...
end select

 

2、循环:

1)、do...loop '重复执行doloop之间的语句,直到exit do

exit do

2)、while...wend

3)、for...next.

4)、for each ... next

 

五、函数

1、格式:

sub Name()
    ...
end sub
function xx()
    ...
end function

sub无返回值,function有返回值

 

2、常用函数:

 1 asc(s)     返回s内第一个字母对应的ASCII码
 2 chr(51)    将数字返回对应的字符
 3 cbool()    返回表达式的boolean值
 4 cByte()    将表达式转换为byte子类型的variant
 5 cCur()     将表达式转换为currency
 6 cdate()    将表达式转换为date
 7 cdble()    将表达式转换为double类型
 8 cint()     转换为integer
 9 cLng()     转换为long
10 csng()     转换为single
11 cstr()     转换为string
12 isArray()  判断是否为数组,返回bool值;
13 isDate()   判断是否为日期,返回bool值;
14 isEmpty()  判断是否已初始化,返回bool值;
15 isNumeric()判断是否为数字,返回bool值;
16 isNull()   判断是否不包含有效数据,返回bool值;
17 isObject() 判断是否引用了有效对象,返回bool值;
18 len(()     返回字符串内的字符数或存储一变量所需要的字节数;
19 left(string,length)     返回从字符串左边算起的指定数目的字符;
20 mid(string,start,length)  从字符串中返回指定数目的字符;
21 right(string,length)      从字符串中返回字符,从右边开始
22 InStr(start,str1,str2)    返回str2在str1中第一次出现的位置,start表示开始搜索位置,为可选;
23 Lcase(str)      返回字符串的小写形式;
24 UCase(str)      返回字符串的大写形式;
25 split(separator) 分割字符串;
26 Date            返回当前日期;
27 Time            返回当前时间;
28 Now             返回日期和时间;
29 day(date)       返回日;
30 month(date)      返回月;
31 year(date)      返回年;
32 hour(time)      返回小时;
33 minute(time)     返回分钟;
34 second(time)     返回秒;
35 formatDateTime(date[,namedFormat])    返回已格式化的时间
36     namedformat可选参数有:
37     vbGeneralDate     (0)
38     vbLongDate       (1)
39     vbShortDate      (2)
40     vbLongTime       (3)
41     vbShortTime      (4)

 

六、异常处理

格式:

on error resume next
...
err.Clear
err.raise 6

对常见文件和数据库的访问:

1 set myobj = CreateObject("Scripting.fileSystemObject")  打开文本文件;
2 set myobj = CreateObject("Excel.Application")    访问Excel
3 Set myobj = CreateObject("Microsoft.XMLDOM")    XML文件访问;
4 set myobj = CreateObject("ADODB.Recordset")    acess数据库访问;
5 set myobj = CreateObject("ADODB.Connection")    SQLServer数据库访问;

 日期文字和时间文字包含在两个#之间,如:#6-1-99#

1 scripting.filesystemobject 提供一整套文件系统操作函数
2 scripting.dictionary    返回存放键值对的字典对象
3 wscript.shell        提供一套读取系统信息的函数
4 wscript.network       提供网络连接和远程打印机管理的函数

 

 

本文转载自:https://www.cnblogs.com/aland-1415/p/7147264.html