常用常用常用常用VVVVBABABABA函数函数函数函数精选精选精选精选By蓝桥玄霜目录目录目录目录前言第1.1例ASC函数第1.2例Chr函数第1.3例Choose函数第1.4例Cos函数第1.5例Date函数第1.6例DateAdd函数第1.7例DateDiff函数第1.8例DatePart函数第1.9例DateSerial函数第1.10例DateValue函数第1.11例Day函数第1.12例Dir函数第1.13例Fix函数第1.14例Format函数第1.15例Hour函数第1.16例IIF函数第1.17例InputBox函数第1.18例Instr函数第1.19例InstrRev函数第1.20例IsArray函数第1.21例IsNumeric函数第1.22例Join函数第1.23例LBound和UBound函数第1.24例LCase和UCase函数第1.25例Left和Right函数第1.26例Len函数第1.27例LTrim、RTrim与Trim函数第1.28例Mid函数第1.29例Month和MonthName函数第1.30例MsgBox函数第1.31例Now函数第1.32例RGB函数第1.33例Rnd函数第1.34例Round函数第1.35例Split函数第1.36例Sqr函数第1.37例Str和CStr函数第1.38例Time函数第1.39例TimeSerial和TimeValue函数第1.40例Timer函数前言前言前言前言我们平时在工作表单元格的公式中常常使用函数,Excel自带的常用的函数多达300多个,功能强大,丰富多彩,但是在VBA中不能直接应用,必须在函数名前面加上对象,比如:Application.WorksheetFunction.Sum(arg1,arg2,arg3)。而能在VBA中直接应用的函数也有几十个,下面将逐一详细介绍常用的40个VBA函数,以供大家学习参考。第第第第1.11.11.11.1例例例例ASCASCASCASC函数函数函数函数一、题目:要求编写一段代码,运行后得到字符串”Excel”的首字母和”e”的ASCII值。二、代码:Sub示例_1_01()DimmyNum1%,myNum2%myNum1=Asc(Excel)'返回69myNum2=Asc(e)'返回101[a1]=myNum1=:[b1]=myNum1[a2]=myNum2=:[b2]=myNum2EndSub三、代码详解1、Sub示例_1_01():宏程序的开始语句。2、DimmyNum1%,myNum2%:变量myNum1和myNum2声明为整型变量。也可以写为DimmyNum1AsInteger。Integer变量存储为16位(2个字节)的数值形式,其范围为-32,768到32,767之间。Integer的类型声明字符是百分比符号(%)。3、myNum1=Asc(Excel):把Asc函数的值赋给变量myNum1。Asc函数返回一个Integer,代表字符串中首字母的字符的ASCII代码。语法Asc(string)必要的string(字符串)参数可以是任何有效的字符串表达式。如果string中没有包含任何字符,则会产生运行时错误。4、myNum2=Asc(e):把Asc函数的值赋给变量myNum2。这里返回小写字母e的ASCII代码101。5、[a1]=myNum1=:[b1]=myNum1:把字符串“myNum1=“赋给A1单元格,把变量myNum1的值赋给B1单元格。6、[a2]=myNum2=:[b2]=myNum2:把字符串“myNum2=“赋给A2单元格,把变量myNum2的值赋给B2单元格。7、EndSub:程序的结束语句,和“Sub示例_1_01()”相对应。第第第第1.21.21.21.2例例例例ChrChrChrChr函数函数函数函数一、题目:要求编写一段代码,运用Chr函数将ASCII值转换为对应的字符。二、代码:Sub示例_1_02()DimmyChar1$,myChar2$myChar1=Chr(69)'返回E。myChar2=Chr(101)'返回e。[a1]=myChar1=:[b1]=myChar1[a2]=myChar2=:[b2]=myChar2EndSub三、代码详解1、Sub示例_1_02():宏程序的开始语句。2、DimmyChar1$,myChar2$:变量myChar1和myChar2声明为字符串变量。也可以写为DimmyChar1AsString。String之字符码的范围是0到255。字符集的前128个字符(0到127)对应于标准的U.S.键盘上的字符与符号。这前128个字符与ASCII字符集中所定义的相同。后128个字符(128到255)则代表特殊字符,例如国际字符,重音符号,货币符号及分数。String的类型声明字符为美元号($)。3、myChar1=Chr(69):把Chr(69)的值赋给变量myChar1。这里返回大写字母E。Chr函数根据字符代码返回一个字符。语法Chr(charcode)必要的charcode(字符代码)参数是用来识别某字符的。4、myChar2=Chr(101):把Chr函数的值赋给变量myChar2。这里返回小写字母e。5、[a1]=myChar1=:[b1]=myChar1:把字符串“myChar1=“赋给A1单元格,把变量myChar1的值赋给B1单元格。6、[a2]=myChar2=:[b2]=myChar2:把字符串“myChar2=“赋给A2单元格,把变量myChar2的值赋给B2单元格。7、EndSub:程序的结束语句,和“Sub示例_1_02()”相对应。第第第第1.31.31.31.3例例例例ChooseChooseChooseChoose函数函数函数函数一、题目:要求编写一段代码,运用Choose函数根据指定数字选择对应的字符串。二、代码:Sub示例_1_03()DimNum%Num=2MsgBoxChoose(Num,一月,二月,三月)EndSub三、代码详解1、Sub示例_1_03():宏程序的开始语句。宏名为示例_1_03。2、DimNum%:变量Num声明为整型变量。3、Num=2:把2赋给变量Num。4、MsgBoxChoose(Num,一月,二月,三月):Choose函数从参数列表中选择并返回一个值。语法Choose(index,choice-1[,choice-2,...[,choice-n]])Choose会根据index的值来返回选择项列表中的某个值。如果index是1,则Choose会返回列表中的第1个选择项。如果index是2,则会返回列表中的第2个选择项,以此类推。Index是必要参数,数值表达式或字段,它的运算结果是一个数值,且界于1和可选择的项目数之间。当index小于1或大于列出的选择项数目时,Choose函数返回Null。如果index不是整数,则会先四舍五入为与其最接近的整数。第第第第1.41.41.41.4例例例例CosCosCosCos函数函数函数函数一、题目:要求编写一段代码,运用Cos函数根据指定角度的余弦计算其正割的值。二、代码:Sub示例_1_04()Dimjiaodu,zengejiaodu=1.3zenge=1/Cos(jiaodu)MsgBox“角度为”&jiaodu&“的正割的值=”&zengeEndSub三、代码详解1、Sub示例_1_04():宏程序的开始语句。宏名为示例_1_04。2、Dimjiaodu,zenge:两个变量都被指定为可变型数据类型。当声明常数、变量或参数时,若无指定数据类型则会自动的指定成Variant(可变型)数据类型。声明成Variant数据类型的变量可以为字符串、日期、时间、Boolean或数值。3、jiaodu=1.3:把以“弧度”为单位的角度1.3赋给变量jiaodu。4、zenge=1/Cos(jiaodu):利用1/余弦算得正割(sec())的值,赋给变量zenge。Cos函数返回一个角的余弦值。其参数是表示一个以弧度为单位的角。5、MsgBox“角度为”&jiaodu&“的正割的值=”&zenge:利用MsgBox函数显示算得的正割(sec())的值。第第第第1.51.51.51.5例例例例DateDateDateDate函数函数函数函数一、题目:要求编写一段代码,运用Date函数显示系统日期的值。二、代码:Sub示例_1_05()DimmyDatemyDate=DateMsgBox“系统日期为”&myDateEndSub三、代码详解1、Sub示例_1_05():宏程序的开始语句。宏名为示例_1_05。2、DimmyDate:变量myDate被指定为可变型数据类型。3、myDate=Date:把系统日期的值赋给变量myDate。Date函数返回系统当前的日期。4、MsgBox“系统日期为”&myDate:利用MsgBox函数显示系统日期的值。第第第第1.61.61.61.6例例例例DateAddDateAddDateAddDateAdd函数函数函数函数一、题目:要求编写一段代码,运用DateAdd函数显示返回一定间隔后的日期。二、代码:Sub示例_1_06()DimdyrqAsDateDimjglxAsStringDimnAsIntegerDimMsgjglx=mdyrq=InputBox(请输入一个日期)n=InputBox(输入增加月的数目:)Msg=新日期:&DateAdd(jglx,n,dyrq)MsgBoxMsgEndSub三、代码详解1、Sub示例_1_06():宏程序的开始语句。宏名为示例_1_06。2、DimdyrqAsDate:变量dyrq声明为日期对象型数据类型。其余几个变量分别是字符串型、整型和可变型变量。3、jglx=m:用字符m来指定以“月份”作为间隔。4、dyrq=InputBox(请输入一个日期):用InputBox函数来让用户输入一个日期,并把用户输入的日期赋给变量dyrq。5、n=InputBox(输入增加月的数目:):用InputBox函数来让用户输入间隔月的数目,并把用户输入的值赋给变量n。6、Msg=新日期:&DateAdd(jglx,n,dyrq):用DateAdd函数计算得到的新的日期和字符串“新日期:”连接起来赋给变量Msg。DateAdd函数返回一个日期,这一日期加上了一个时间间隔。语法DateAdd(interval,number,date)DateAdd函数语法中有下列命名参数:interval必要。字符串表达式,是所要加上去的时间间隔。它具有好多设定值,比如”m”为月;”d”为日;”yyyy”为年等等。number必要。数值表达式,是要加上的时间间隔的数目。其数值可以为正数(得到未来的日期),也可以为负数(得到过去的日期)。date必要。表示日期的文字。7、MsgBoxMsg:利用MsgBox函数显示Msg的值。第第第第1.71.71.71.7例例例例DateDiffDateDiffDateDiffDateDiff函数函数函数函数一、题目:要求编写一段代码,运用DateDiff函数返回某个指定日期距离今天的天数。二、代码:Sub示例_1_07()DimzdrqAsDateDimMsgzdrq=InputBox(请输入一个日期:)Msg=离开今天的天数:&DateDiff(d,Now,zdrq)MsgBoxMsgEndSub三、代码详解1、Sub示例_1_07():宏程序的开始语句。宏名为示例_1_07。2、DimzdrqAsDate:变量zdrq声明为日期对象型数据类型。3、zdrq=InputBox(请输入一个日期):用InputBox函数来让用户输入一个日期,并把用户输入的日期赋给变量zdrq。4、Msg=离开今天的天数:&DateDiff(d,Now,zdrq):用DateDiff函数计算得到的结果和字符串“离开今天的天数:”连接起来赋给变量M