null第2讲 Visual Basic程序设计语言基础第2讲 Visual Basic程序设计语言基础本章的学习要点
基本数据类型和用户定义的数据类型
常量和变量
常用内部函数
算术运算符、关系运算符与逻辑运算符以及表达式的运算优先级2.1 数据类型2.1 数据类型数据是计算机处理的对象,也是运算产生的结果。
为了便于处理各式各样的数据,高级语言会将数据进行类型划分,即根据数据的用途不同将其定义为不同的数据类型。
定义数据的类型后,既可以确定数据占用的存储空间,又可以确定数据的处理范围。
Visual Basic 6.0中将数据类型分为基本数据类型和用户自定义数据类型。2.1 数据类型2.1 数据类型一、基本数据类型
基本数据类型是系统定义好的
标准
excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载
数据类型,可以直接使用。
基本数据类型可分为6类:数值型、日期型、逻辑型、字符型、对象型和变体型,其中数值型数据又包括:整型、长整型、单精度型、双精度型、货币型和字节型。 基本数据类型基本数据类型数值型基本数据类型基本数据类型整数长整数整型单精度型双精度型实型货币型字节型数值型基本数据类型基本数据类型数值型
整型
是不带小数点的数据,和数学中整数的含义类似,只是整型数据取值范围在-32768~32767之间,存放在计算机中用2个字节(即16位)来表示。类型符为%,即在数据尾加上%就表示此数据为整型数据。
长整型
和整型数据类似,都表示整数,但所能表示的数据范围比整型大,取值范围为-2147483648~2147483647,长整型数据在计算机中用4个字节表示。类型符为&。例如:2%表示2以整型数据存储。例如:5&表示5为长整型数据存储。 基本数据类型基本数据类型数值型
单精度型
带小数点的实数,在计算机中用4个字节来存储,有效数字为7位,通常单精度型数据以指数形式表示,指数部分用E或e表示。
双精度型
带小数点的实数,有效数字为15或16位,在计算机内用8个字节存储,比单精度型数据精度更高。双精度型数据也以指数形式表示,指数部分用D或d表示。例如:3.6e+5表示数学中的3.6×105,7.45E-6表示7.45×10-6 例如:55.87d+5表示数学中的55.87×105,7.45D-6表示7.45×10-6。 基本数据类型基本数据类型数值型
货币型
是为了计算货币而设置的定点实数或整数,它的精度
要求
对教师党员的评价套管和固井爆破片与爆破装置仓库管理基本要求三甲医院都需要复审吗
比较高,在计算机中用8个字节存储。类型符为@。
字节型
是范围在0~255之间的无符号的整数,在计算机中仅用一个字节表示,因此称为字节型数据。
例如:23.5@表示23.5以货币型数据存储。 基本数据类型基本数据类型日期型
表示在公元100年1月1日~9999年12月31日之间的日期和时间数据,日期型数据用#括起来标识。
逻辑型
逻辑型数据也称为布尔型数据,用来表示逻辑判断的结果。它只有真(True)和假(False)两种取值情况。例如:#7/25/2006#表示2006年7月25日。数值型数据逻辑型数据数据转换数值型数据逻辑型数据0False非0True0False-1True基本数据类型基本数据类型字符型
用双引号括起来的一串字符,字符型数据可以有两种:定长字符串和变长字符串。
定义变长字符串时,其后加上“*”和数字,表示该字符串的长度为该数字表示的字节数,例:Dim a As String * 6,表示定义变量a是一个含6个字符的定长字符串数据。
对象型
对象型数据主要用于定义应用程序中定义的对象的类型。
基本数据类型基本数据类型变体型
变体型数据可以表示任何一种数据类型,其大小由所赋予的数据类型决定。
说明: (1) 不同类型的数据,所占的存储空间不一样。 (2) 数据的类型可在数据之后加上一个类型符来表示,例如,413&,86!,104.67#等。
例如:
dim a As Variant '定义a为变体型数据
a=123 'a为整形数据
a="visual basic" 'a为字符型数据用户自定义数据类型用户自定义数据类型用户自定义数据类型是根据用户需要在已存在的基本数据类型基础上组合而形成的新的数据类型。
格式:
[Private|Public] Type 用户自定义类型名
元素名1 As 数据类型
元素名2 As 数据类型
……
End Type
元素名为自定义数据类型中的一个成员类型类型为上述基本类型或自定义数据类型用户自定义数据类型用户自定义数据类型例如,一个学生的信息可以定义为用户自定义的数据类型。根据需要,可以定义一个包括学生的学号(字符型数据)、姓名(字符型数据)、出生日期(日期型数据)等新的自定义数据类型以方便使用。
Private Type Student
SNo As String * 10
SName As String * 10
SBirth As Data
End Type2.2 常量和变量2.2 常量和变量 在Visual Basic中,标识符是程序员为变量、常量、数据类型、过程、函数、类等定义的名字。
标识符的命名规则
(1)标识符必须以字母开头,可以由字母、数字或下划线组成。
(2)标识符的长度不能超过255个字符,控件、窗体、类和模块的名字不能超过40个字符。
(3)自定义的标识符不能和VB中的运算符、语句、函数和过程名等关键字同名,同时也不能与系统已有的
方法
快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载
和属性同名。
(4)保证标识符在同一范围内是惟一的。 2.2 常量和变量2.2 常量和变量常量
常量也称为常数。Visual Basic中,用常量表示在整个程序中事先设置的、不会改变数值的数据。
常量分为:
常量的数据类型可以是任何一种数据类型。 直接常量符号常量2.2 常量和变量2.2 常量和变量常量
直接常量
直接常量是在程序中直接给出的数值、字符、日期等具体的数据值。按照数据类型分类,可以将直接常量分为以下几类:字节型、整型和长整型常量 单精度和双精度浮点型常量 逻辑型常量 字符型常量 直接常量 日期型常量 字符型常量的引号必须是
西文双引号 2.2 常量和变量2.2 常量和变量常量
符号常量
符号常量是用一个标识符代表一个直接常量,用这个标识符作为常量名。
用户自定义的符号常量,定义格式:系统内部定义常量 用户自定义的符号常量 符号常量Const 符号常量名 [As 数据类型]= 常量表达式 Const Pi=3.141592653589 As Singer
Const Da=#1/1/68#
Const M As Integer=45,D="tea" as String 2.2 常量和变量2.2 常量和变量变量
变量是在程序执行过程中,其值能够改变的量。
变量名的命名遵循标识符的命名规则。在变量使用之前需要对变量所描述数据的数据类型进行声明。在变量使用之前提前声明变量称为显式声明;没提前声明而直接使用则称之为隐式声明。
显式声明
{Dim | Public | Private | Static} 变量名1 [As 类型1 ][, 变量名2 [As 类型2 ]]… Dim a As Integer
Dim c2.2 常量和变量2.2 常量和变量变量
隐性声明
如果没有声明就直接使用,Visual Basic会自动根据数据值对其规定数据类型。
后缀法声明
在Visual Basic中,对有些数据类型的变量,允许直接在变量名后面加上数据类型符(即后缀),指定该变量的数据类型。
X=35 'X为Integer类型
Y="Visual Basic 6.0编程" 'Y为String类型 xa% '变量xa是整型数据
xb@ '变量xb是货币型数据
xc$ '变量xc是字符型数据2.2 常量和变量2.2 常量和变量强制显式声明变量语句
Visual Basic虽然不要求必须对变量进行声明,但是不声明变量经常会出现很多错误,所以一般编程者希望在运行程序之前由系统编译器帮助检查程序中是否有未显式声明的变量,如果希望这样做,可以在通用声明部分用强制显式声明语句。格式 :
这个语句所实现的功能也可以通过Visual Basic系统的选项功能来设置,打开“工具”→“选项”菜单项,在“编辑器”选项卡下,选中“要求变量声明”,同样可以达到这样的功能。Option Explicit选择2.3 运算符和表达式2.3 运算符和表达式 运算是对数据进行加工的过程,描述不同运算的符号称为运算符,参与运算的数据称为操作数。
在VB中,运算符有算术运算符、字符串运算符、关系运算符、逻辑运算符。
表达式用来表示某个求值规则,可以由关键字、运算符、常量、变量、函数、对象和配对的圆括号以合适的形式组合而成。
每个表达式都有一个惟一的值作为表达式的值。根据运算符的不同,可以将表达式分为算术表达式、字符串表达式、关系表达式、逻辑表达式 。
2.3.1 算术运算符及其表达式 2.3.1 算术运算符及其表达式 算术运算符是专用来进行数学计算的运算符。Visual Basic提供的算术运算符共有7个,除负号为单目运算符外,其余的都为双目运算符,即需要两个操作数完成的运算。2.3.1 算术运算符及其表达式2.3.1 算术运算符及其表达式算术表达式是由算术运算符连接操作数构成的表达式,其运算结果是数值。由于一个表达式中可能出现多种算术运算符,所以计算的时候要按照优先级来进行运算,优先级越高的越先计算。圆括号可以改变优先级,括号内的优先级最高。
算术运算符的操作数可以是数值型、数字字符型或逻辑型。计算时数字字符型和逻辑型数据自动转换为数值型后再参与运算。逻辑型数字字符型数值型运算注 意注 意+、-、*、/的运算规则和数学里面的运算规则一样,计算时按照“先乘除,后加减”的规则计算。
整除运算的运算规则是先计算两个整数的商,再丢弃商值的小数部分。若参加运算的除数或被除数不是整数,则按照四舍五入的方法先进行取整,然后再按照整除运算的规则计算结果。例如8\3的结果是2,5.8\3的结果是2。注 意注 意a MOD b的值为a整除b后的余数,如果参加计算的数据是小数,先对它们进行四舍五入取整,然后再完成求模运算。如果参加运算的有负数,用绝对值参加取模运算,运算结果的符号和a的符号一致。例如:5.6 MOD 3的结果是0,-5 MOD 3的结果是-2。
“+” 、“-”也可以对日期型数据进行计算,用来计算日期之间的关系,如#12/19/1999# - #11/16/1999#的结果为33,表示1999年12月19日到1999年11月16日之间有33天。#11/16/1999# + 33的结果为#12/19/1999#,表示从1999年11月16日后推33天是1999年12月19日。2.3.1 算术运算符及其表达式2.3.1 算术运算符及其表达式例1:若有如下程序,分别声明变量a,b分别赋值为2和3,在窗体的单击事件中测试各种算术运算的结果。
Private Sub Form_Click()
a = 2: b = 3
Print a + b, a - b
Print a * b, a Mod b
Print a / b, a \ b
Print a ^ b
End Sub两行语句一行书写2.3.1 算术运算符及其表达式2.3.1 算术运算符及其表达式编写的窗体单击事件过程代码如下:
Private Sub Form_Click()
Dim x As Integer, a As Integer
Dim b As Integer, c As Integer
x = 36
a = x \ 10 '求十位数
b = x Mod 10 '求个位数
c = b * 10 + a '生成新的数
Print "处理后的数: "; c
End Sub 例2: 给定一个两位正整数(如36),交换个位数和十位数的位置,并将处理后的结果显示在窗体上。运行程序后单击窗体,输出结果是:处理后的数:63将数学公式转换为VB表达式将数学公式转换为VB表达式程序中写为:
Sqr(a+b)*sin(30*3.14/180)/((x1^2+1)*(y^3-2))2.3.2 字符串运算符及其表达式2.3.2 字符串运算符及其表达式字符串运算符的作用是实现字符串的连接,也称连接运算符,字符串运算符有&和+。
当参加运算的操作数都是字符型数据时,两运算符的作用和结果相同,都是将两个字符串连接起来,组成一个新的字符串。
当连接运算的操作数并非都为字符串的时候,两个连接运算符的结果有所差别。&连接符在任何时候都做字符串连接操作,如果操作数有非字符串数据,先将其转换为对应的字符串数据,再进行连接操作。 "xyz" + "123" '结果为新字符串"xyz123"
"xyz" & "123" '结果为新字符串"xyz123""123" & "xyz" '结果为新字符串"123xyz"
123 & 456 '结果为新字符串"123456"
123 & "xyz" '结果为新字符串"123xyz"2.3.2 字符串运算符及其表达式2.3.2 字符串运算符及其表达式当+连接符作为运算符时,若其中一个字符串为数字字符型数据,另一个为数值型数据时,先将数字字符型变为数值型,再实现算术加法运算;若两个都为数值型数据,则直接按照算术运算符实现加法运算;若其中一个为数值型数据,另外一个为非数字字符型数据,系统则会提示出错。
"123"+45 '结果为数据168
123+45 '结果为数据168
"Visual Basic 编程"+45 '程序会提示出错 为了避免“+”做连接运算时与加法运算混淆,一般都使用&作为连接符号使用,但使用“&”连接符时必须在“&”的前面和后面各增加一个空格避免出错。这是因为符号“&”的另一个含义是长整型的类型符,如果变量与符号&接在一起,VB系统先把它作为类型定义符处理,因而会出现语法错误。 2.3.2 字符串运算符及其表达式2.3.2 字符串运算符及其表达式例如:
"100" + 123 ' 结果为 223
"100" + "123" ' 结果为 "100123"
"Abc" + 123 ' 出错
"100“ & 123 ' 结果为 "100123"
100 & 123 ' 结果为 "100123"
"Abc" & "123" ' 结果为 "Abc123"
"Abc" & 123 ' 结果为 "Abc123"
2.3.2 字符串运算符及其表达式2.3.2 字符串运算符及其表达式例3 编写一个简单的加法程序,用两个文本框存放被加数和加数,另外一个文本框存放结果,单击“计算”按钮将计算结果显示在结果框中,单击“算式”按钮将整个算式完整显示在算式的标签中。
2.3.2 字符串运算符及其表达式2.3.2 字符串运算符及其表达式Private Sub Command1_Click()
Dim s1 As Integer, s2 As Integer, s3 As Integer
s1 = Val(Text1.Text)
s2 = Val(Text2.Text)
s3 = s1 + s2
Text3.Text = s3
End SubPrivate Sub Command2_Click()
Label3.Caption = Label3.Caption & Text1.Text & "+" & _
Text2.Text & "=" & Text3.Text
End Sub练 习练 习Private sub form_click()
a=“武汉” : b=“科技大学”
print a & b
print a+b
c=123
print c & 4,c & “4”
print c+4, c+”4”
d=“123”
print d & 4 ,d & “4”
print d+4,d+”4”
End sub2.3.3 关系运算符及其表达式2.3.3 关系运算符及其表达式关系运算符也称为比较运算符,用来比较两个操作数之间的大小关系,操作数可以是数值型数据、字符(串)型数据、日期型数据等,但不能是逻辑型数据,若为逻辑型数据则需要根据逻辑型数据向数值型数据转换的规则转换后再进行运算。关系运算的结果是逻辑值,即运算的结果只有True和False两种。 数值型数据字符型数据日期型数据逻辑型数据数值型数据运算2.3.3 关系运算符及其表达式2.3.3 关系运算符及其表达式2.3.3 关系运算符及其表达式2.3.3 关系运算符及其表达式数值型数据在进行比较的时候,直接比较其值大小。
例如:5>3的结果为True。
日期型数据比较大小时,VB会把日期型数据看成一个yyyymmdd的8位整数,按照数值比较其大小。
例如:#1999-5-6#>#2003-6-13#的结果为False。
字符型数据比较大小时,若为单个字符,比较其ASCII码值;若为字符串时,依次从左边第一个字符开始比较,直到发现一个不相同的为止,由第一个不相同的字符的大小的关系代表字符串的大小,若字符串长度不相等,短字符串尾部可以补空格比较。常见的字符值由对应的ASCII码表中的顺序决定.
常见字符ASCII码大小关系如下:
例如:"sab">"aab"的结果为True;"abc"="ABC"的结果为False。"空格"<……<"0"<"1"<……<"9"<……
<"A"<"B"<……<"Y"<"Z"<……
<"a"<"b"<……<"y"<"z"<"任何汉字"2.3.3 关系运算符关系运算的规则如下:
(1)当两个操作数均为数值型,按数值大小比较。
(2)字符串比较,则按字符的ASCII码值从左到右一一比较,直到出现不同的字符为止.。
例: " ABCDE " > " ABRA "
结果为 False2.3.3 关系运算符2.3.3 关系运算符及其表达式2.3.3 关系运算符及其表达式逻辑值不能参加运算,如果比较中出现逻辑值,先将逻辑值转换为对应的数值型数据再进行比较。例如:10 <= 3 < 20的结果先计算10<=3的结果为False,然后将False转换为数值0,将结果再和20比较,结果为True。
10 <= 3 < 20False0True2.3.3 关系运算符及其表达式2.3.3 关系运算符及其表达式数值型数据与数字字符型数据比较时,将字符型数据转换为对应的数值型数据进行计算,
如:29>"189",按数值比较,结果为False;数值型与不能转换成数值型的字符型比较,如:77>"sdcd",不能比较,系统将提示出错。
关系运算没有优先级,也可以认为具有相同的优先级,所以计算的时候按照从左到右的顺序进行计算。例:例:Private sub form_click()
print 3>2 and 3<4
print not (3>2 and 3<4)
print 1>3 or 2<3
Print 10 <= 3 < 20
End sub 练 习练 习Private sub form_click()
a = 1: b = 2: c = 3
Print a + 5 >= b * 3
Print "Visual Basic" < "Pascal"
Print "qaz" = "QAZ"
Print a <> b
End sub 2.3.4 逻辑运算符及其表达式2.3.4 逻辑运算符及其表达式逻辑运算符亦称为布尔运算符,用来对逻辑型数据进行各种逻辑运算,它的操作数经常是关系表达式或逻辑型数据,其结果也仍然是逻辑型数据,即True或False。 2.3.4 逻辑运算符及其表达式2.3.4 逻辑运算符及其表达式逻辑运算的结果比较复杂,运算规则如表下:
2.3.4 逻辑运算符及其表达式2.3.4 逻辑运算符及其表达式计算逻辑表达式时,如果存在关系表达式,关系表达式的优先级高,先运算关系表达式,再运算逻辑表达式,如,4>5 And 5<3的结果为False。
数学上表示某个数在某个值域范围内时用表达式10≤X<20,用VB程序中应写成:X>= 10 And X<20。例:例:Private sub form_click()
print 3>2 and 3<4
print not (3>2 and 3<4)
print 1>3 or 2<3
Print 10 <= 3 < 20
End sub 5.3.5 运算符优先级5.3.5 运算符优先级每种同类型的运算符都有内部的运算符优先级,一个表达式中可以包括不同的运算符和函数,当各种算符出现在同一个表达式中时,也应该按照不同类型运算符的优先级进行运算。各种运算符的优先级如下:
数值运算符>字符串运算符>关系运算符>逻辑运算符
可以用括号改变优先顺序,使得括号内的运算优先级高于括号外的运算。对于多重括号,总是由内到外强制表达式的某些部分优先运行。括号内的运算总是最优先计算。Visual Basic表达式的书写规则Visual Basic表达式的书写规则 (1)每个符号占一个位置,必须在同一基准并排书写所有符号都不能出现在上标、下标,如:23应该写成2^3,x1要写成x1。
(2)数学表达式中省略的乘号必须要写上,如数学表达式2x的VB算术表达式是2*x,否则含义就不同了。
(3)所有的括号都应该用(),括号必须配对,不能出现[ ]或者{ }。
(4)数学中的有些符号不能出现在VB中,如±、α、β、∑、∏等。5.4 常用内部函数5.4 常用内部函数 调用VB提供的内部函数的方法有两种:
第一种方法:
函数名(参数列表)
第二种方法:
函数名
说明:
(1)使用库函数要注意参数的个数及其参数的数据类型。
(2)要注意函数的定义域(自变量或参数的取值范围)。
例如:sqr(x) 要求x>=0。
(3)注意函数的值域。例如:exp(23773) 的值就超出实数在计算机中表示的范围。 数学函数数学函数在三角函数中的自变量是以弧度为单位。
如:sin300将30度转换为弧度
sin(3.14159/180*30)数学函数数学函数Abs(1) 正数1
Abs(-5) 负数5Exp(1) e1(e=2.718281828……)
Exp(-5) e-5(6.73794699908547E-03)数学函数数学函数符号函数Sgn返回值有三种:
Sgn(-3)=-1(参数为负数)
Sgn(0)= 0
Sgn(3)=1 (参数为正数)只有非负数才有平方根(可以是实数)
Sqr(9)
Sqr(9. 56)数学函数数学函数Fix(10.4) 10 Fix(-5.6) -5Int(50.6)→50 Int(-50.6)→-51
当x≥0时就直接舍去小数
若x<0则舍去小数位后再减1随机数函数 随机数函数
直接使用Rnd函数每次得到的序列都是一样的,在使用中有时希望每次都得到不同的序列,那么就可以使用Randomize随机数种子生成器语句,使用在Rnd函数之前,这样可以使得Rnd函数产生的随机数为不同的序列。随机数函数随机数函数在实际使用中可能需要的随机数要扩大范围或者限制在特定范围内,若要得到0~50间(不包括50)的随机数,直接可以用得到的随机数乘以50,扩大随机数范围,即,Rnd*50。 若要产生1-100的随机整数:Int(Rnd *100)+1
Int(4*Rnd+1)可以产生1~4之间(含1和4)的随机整数Rnd函数返回0 ~ 1(包括0和不包括1)之间的数。
Rnd通常与Int函数配合使用。
若要生成[a, b]区间范围内的随机整数,可以用公式
Int((b-a+1)*Rnd + a)
随机数函数随机数函数使用Rnd函数之前,先用Randomize语句来初始化随机数生成器
例 通过随机函数产生2个两位正整数,求这2个数 之和并显示出来随机数函数随机数函数编写的窗体单击事件过程代码如下:
Private Sub Form_Click()
Dim a As Integer, b As Integer, c As Integer
Randomize '初始化随机数生成器
a = Int(90 * Rnd + 10) '产生[10,99]区间内的随机整数
b = Int(90 * Rnd + 10)
c = a + b '求两数之和
Print "产生的两个随机数: "; a, b
Print "和数: "; c
End Sub字符串函数 字符串函数 Ltrim(" abcd ") = "abcd "
Rtrim(" abcd ") = " abcd"
Trim(" abcd ") = "abcd"说明:如果返回是字符型,则函数后有“$”字符。字符串函数字符串函数Left$(“World”,2) 结果:
Right$(“World”,2) 结果:
Mid$(“World”,2,3) 结果:WoWold“ ”ld“ ”orlorl“ ”字符串函数字符串函数Len(“name”) 结果: 4String(3, "s")的结果为:"sss"
String(3, "sab")的结果同样为"sss"
Space(6)的结果为:" "字符串函数字符串函数Instr(4,”xxpxxpXp”,”p”)UCase("How Are You") = "HOW ARE YOU"
LCase("How Are You") = " how are you "从第4位开始xp第6位结果为6练习练习s1 = "ABCDEFGH"
s2 = Left(s1, 2)
s3 = Right(s1, 3)
s4 = Mid(s1, 3, 2)
Print s2, s3, s4
s1 = "Visual Basic"
i = Len(s1)
Print InStr("ABCDEF", "BC")
Print InStr(2, "ABCDEF", "BC")
Print InStr(4, "ABCDEF", "BC")
Str1 = "Hello"
s1 = UCase(Str1)
s2 = LCase(Str1)
Str1 = Space(2)
Print s1, s2, Str1, 10练 习练 习 100 mod 3
100\3+20
“ABC”>”abc”
Date
Int(-45.235)
Fix(45.235)
Len(“how are you!”)
Left(“visual basic”,6)1
53
False
当前系统日期
-46
45
12
visual转换函数--ASCII码转换函数转换函数--ASCII码转换函数Asc(“China”) 结果:67(大写字母C的ASCΠ码值为67)
Chr(100) 结果:“ d ”(小写字母d的ASCΠ码值为100)转换函数--直接转换函数转换函数--直接转换函数Str(323.1) 结果:“ └┘323.1”正数无符号,转换成空格
Str(-323.1) 结果:“-323.1”负数的符号直接转换,无空格
N1= Val(“1.234”) N1的值是 1.234数值转换
N2= Val(“1.34ASD45”) N2的值是 1.34字母后忽略
N3= Val("-12ASD") N3的值是-12字母后忽略
N4= Val(“ASD123”) N4的值是
0字
个人自传范文3000字为中华之崛起而读书的故事100字新时代好少年事迹1500字绑架的故事5000字个人自传范文2000字
母开头为0
N5= Val(“&HFFFF”) N4的值是-1可以识别八、十六进制
N6= Val(“1.2e2”) N6的值为 120单精度型数据日期和时间函数 日期和时间函数 日期和时间函数 日期和时间函数 说明:
(1)日期和时间函数使用相对简单,若无参数,则返回系统的时间或日期,若有参数,确定其参数均为日期型的数据,即可操作。
(2)函数的参数可为任何日期型数据,包括函数的结果。例如:
Year(Now) 返回当前日期的年份。
Day(#7/25/2006#) 结果为25。
(3)WeekDay函数的结果是将周日认为是一个星期的开始,即,周日对应的返回值为1,依次类推。 日期/时间函数示例 日期/时间函数示例Private Sub Form_Click()
x = #1/1/2008#
a = x - Date
b = Weekday(x)
c = Year(Date)
d = Month(Date)
e = Hour(Time)
f = Minute(Time)
Print "现在距离2008年元旦还有: "; a; "天"
Print “2008年元旦是:该星期的第"; ; "天"
Print "本月份是:"; c; "年"; d; "月"
Print "现在是:"; e; "时"; f; "分"
End Sub格式输出函数 格式输出函数 说明:
(1)expression为有效表达式,即要转换的数据,format参数一般不省略,当省略时,可以简单认为此时Format函数的作用和CStr函数一致。
例如:Format(-455)的结果为"-455"。 格式输出函数 格式输出函数 (2)格式化数据时,format参数中可以出现“#”、“0”等字符串来表示某种指定格式,每一个字符都可以代表转换后的一位字符,当数据超过指定位数,0表示用0补齐,而#表示不进行其他操作,两种都进行四舍五入。
例如:
Format(12222.34455, "##.###")的结果为"12222.345"。
Format(12222.34455, "00.000")的结果为"12222.345"。
Format(2.3, "##.###")的结果为"2.3"。
Format(2.3, "00.000")的结果为"02.300"。
所以一般情况下,整数部分用#表示,小数的位数可以用0表示,即规定某个数据保留的位数。
如:Format(2.3, "##.000")的结果为"2.300"
格式输出函数 格式输出函数 在Format参数中,还可以出现其他的符号,如:“,”、“:”或其他数据等,这些符号原样输出,在处理时,数据从右向左匹配。
例如:
Format(254485, "##:1:##")的结果为"2544:1:85“
当参数以%结尾时,表示以百分制显示。
例如:
Format(2544.85, “00.0%”)的结果为“254485.0%”格式输出函数 格式输出函数 (3)格式化字符串时,format参数中可以出现“@”、“>”、“<”等字符,这些字符可以用来指定某种格式,@用来表示字符串的长度,不足的在字符串前补空格,若在@前加“!”,则表示在字符串后补空格。“>”、“<”表示转换为大写或者小写字母。
例如:
Format("ABcd", "@@@@@@@@")的结果为“ ABcd"
Format("ABcd", "!@@@@@@@@")的结果为"ABcd "
Format("Hello kid", "<")的结果为"hello kid"
Format("Hello kid", ">")的结果为"HELLO KID"
也可以同时使用多个符号表示:
Format("Hello", ">@@@@@@@@")的结果“ HELLO"格式输出函数 格式输出函数 (4)格式化日期是Format函数经常使用的功能。例如:
若MyTime = #17:04:23#,则以下Format函数的结果为:
MyDate = #January 27, 1993#
MyStr = Format(Time, "Long Time")表示以系统设置的长时间格式返回当前系统时间。
MyStr = Format(Date, "Long Date")表示以系统设置的长日期格式返回当前系统日期。
MyStr = Format(MyTime, "h:m:s")表示返回 "17:4:23"。
MyStr = Format(MyTime, "hh:mm:ss AMPM")表示返回 "05:04:23 PM"。
MyStr = Format(MyDate, "dddd, mmm d yyyy")表示返回 "Wednesday, Jan 27 1993"。