EXCELVBA函数参考手册Word文档格式.docx
《EXCELVBA函数参考手册Word文档格式.docx》由会员分享,可在线阅读,更多相关《EXCELVBA函数参考手册Word文档格式.docx(139页珍藏版)》请在冰豆网上搜索。
返回50.3。
MyNumber=Abs(-50.3)'
请参阅:
Sgn函数、数学函数中的Abs函数、Atn函数、Cos函数、Exp函数、Fix函数、Int函数、Log函数、Rnd函数、Sgn函数、Sin函数、Sqr函数、Tan函数、导出的数学函数:
导出的数学函数
以下为非基本数学函数的列表,皆可由基本数学函数导出:
函数
由基本函数导出之公式
Secant(正割)
Sec(X)=1/Cos(X)
Cosecant(余割)
Cosec(X)=1/Sin(X)
Cotangent(余切)
Cotan(X)=1/Tan(X)
InverseSine(反正弦)
Arcsin(X)=Atn(X/Sqr(-X*X+1))
InverseCosine(反余弦)
Arccos(X)=Atn(-X/Sqr(-X*X+1))+2*Atn
(1)
InverseSecant(反正割)
Arcsec(X)=Atn(X/Sqr(X*X-1))+Sgn((X)-1)*(2*Atn
(1))
InverseCosecant(反余割)
Arccosec(X)=Atn(X/Sqr(X*X-1))+(Sgn(X)-1)*(2*Atn
(1))
InverseCotangent(反余切)
Arccotan(X)=Atn(X)+2*Atn
(1)
HyperbolicSine(双曲正弦)
HSin(X)=(Exp(X)-Exp(-X))/2
HyperbolicCosine(双曲余弦)
HCos(X)=(Exp(X)+Exp(-X))/2
HyperbolicTangent(双曲正切)
HTan(X)=(Exp(X)-Exp(-X))/(Exp(X)+Exp(-X))
HyperbolicSecant(双曲正割)
HSec(X)=2/(Exp(X)+Exp(-X))
HyperbolicCosecant(双曲余割)
HCosec(X)=2/(Exp(X)-Exp(-X))
HyperbolicCotangent(双曲余切)
HCotan(X)=(Exp(X)+Exp(-X))/(Exp(X)-Exp(-X))
InverseHyperbolicSine(反双曲正弦)
HArcsin(X)=Log(X+Sqr(X*X+1))
InverseHyperbolicCosine(反双曲余弦)
HArccos(X)=Log(X+Sqr(X*X-1))
InverseHyperbolicTangent(反双曲正切)
HArctan(X)=Log((1+X)/(1-X))/2
InverseHyperbolicSecant(反双曲正割)
HArcsec(X)=Log((Sqr(-X*X+1)+1)/X)
InverseHyperbolicCosecant
HArccosec(X)=Log((Sgn(X)*Sqr(X*X+1)+1)/X)
InverseHyperbolicCotangent(反双曲余切)
HArccotan(X)=Log((X+1)/(X-1))/2
以N为底的对数
LogN(X)=Log(X)/Log(N)
Array函数
返回一个包含数组的Variant。
Array(arglist)
所需的arglist参数是一个用逗号隔开的值表,这些值用于给Variant所包含的数组的各元素赋值。
如果不提供参数,则创建一个长度为0的数组。
用来表示数组元素的符号由变量名、圆括号以及括号中的所需元素的索引号组成。
在下面的示例中,第一条语句创建一个Variant的变量A。
第二条语句将一个数组赋给变量A。
最后一条语句将该数组的第二个元素的值赋给另一个变量。
DimAAsVariant
A=Array(10,20,30)
B=A
(2)
使用Array函数创建的数组的下界受OptionBase语句指定的下界的决定,除非Array是由类型库(例如VBA.Array)名称限定。
如果是由类型库名称限定,则Array不受OptionBase的影响。
注意没有作为数组声明的Variant也可以表示数组。
除了长度固定的字符串以及用户定义类型之外,Variant变量可以表示任何类型的数组。
尽管一个包含数组的Variant和一个元素为Variant类型的数组在概念上有所不同,但对数组元素的访问方式是相同的。
Array函数示例
该示例使用Array函数来返回一个包含Variant的数组。
DimMyWeek,MyDay
MyWeek=Array("
Mon"
"
Tue"
Wed"
Thu"
Fri"
Sat"
Sun"
)
'
返回值假设下界的设置为1(使用OptionBase
语句)。
MyDay=MyWeek
(2)'
MyDay的值为"
。
MyDay=MyWeek(4)'
Asc函数
返回一个Integer,代表字符串中首字母的字符代码。
Asc(string)
必要的string参数可以是任何有效的字符串表达式。
如果string中没有包含任何字符,则会产生运行时错误。
在非DBCS系统下,返回值范围为0–255。
在DBCS系统下,则为-32768–32767。
注意AscB函数作用于包含在字符串中的字节数据,AscB返回第一个字节的字符代码,而非字符的字符代码。
AscW函数返回Unicode字符代码,若平台不支持Unicode,则与Asc函数功能相同。
Asc函数示例
本示例使用Asc函数返回字符串首字母的字符值(ASCII值)。
MyNumber=Asc("
A"
)'
返回65。
a"
返回97。
Apple"
Atn函数
返回一个Double,指定一个数的反正切值。
Atn(number)
必要的number参数是一个Double或任何有效的数值表达式。
Atn函数的参数值(number)为直角三角形两边的比值并返回以弧度为单位的角。
这个比值是角的对边长度除以角的邻边长度之商。
值的范围在-pi/2和pi/2弧度之间。
为了将角度转换为弧度,请将角度乘以pi/180。
为了将弧度转换为角度,请将弧度乘以180/pi。
注意Atn是Tan的反三角函数,Tan的参数值为角度,返回直角三角形的两条边的比值。
不要将Atn和余切函数混淆,余切函数值是正切函数值的倒数,cotangent=(1/tangent)。
Atn函数示例
本示例使用Atn函数计算圆周率。
Dimpi
pi=4*Atn
(1)'
计算圆周率。
CallByName函数
执行一个对象的方法,或者设置或返回一个对象的属性。
CallByName(object,procname,calltype,[args()])
CallByName函数的语法有以下命名参数:
部分
描述
object
必需的;
变体型(对象)。
函数将要执行的对象的名称。
procname
变体型(字符串)。
一个包含该对象的属性名称或者方法名称的字符串表达式。
calltype
常数。
一个vbCallType类型的常数,代表正在被调用的过程的类型。
args()
可选的:
变体型(数组)。
CallByName函数用于获取或者设置一个属性,或者在运行时使用一个字符串名称来调用一个方法。
在下面的例子中,第一行使用CallByName来设置一个文本框的MousePointer属性,第二行得到MousePointer属性的值,第三行调用Move方法来移动文本框:
CallByNameText1,"
MousePointer"
vbLet,vbCrosshair
Result=CallByName(Text1,"
vbGet)
Move"
vbMethod,100,100
CBool等类型转换函数
每个函数都可以强制将一个表达式转换成某种特定数据类型。
CBool(expression)CByte(expression)CCur(expression)CDate(expression)
CDbl(expression)CDec(expression)CInt(expression)CLng(expression)
CSng(expression)CStr(expression)CVar(expression)
必要的expression参数可以是任何字符串表达式或数值表达式。
返回类型
函数名称决定返回类型,如下所示:
expression参数范围
CBool
Boolean
任何有效的字符串或数值表达式。
CByte
Byte
0至255。
CCur
Currency
-922,337,203,685,477.5808至922,337,203,685,477.5807。
CDate
Date
任何有效的日期表达式。
CDbl
Double
负数从-1.79769313486231E308至-4.94065645841247E-324;
正数从4.94065645841247E-324至1.79769313486232E308。
CDec
Decimal
零变比数值,即无小数位数值,为
+/-79,228,162,514,264,337,593,543,950,335。
对于28位小数的数值,范围则为
+/-7.9228162514264337593543950335;
最小的可能非零值是0.0000000000000000000000000001。
CInt
Integer
-32,768至32,767,小数部分四舍五入。
CLng
Long
-2,147,483,648至2,147,483,647,小