EXCEL VBA函数
### EXCEL VBA函数参考手册知识点详解 #### Abs函数 **功能:** 返回指定数值的绝对值。绝对值是指不考虑数的符号(即正负号),只取其大小的值。 **语法:** ```vb Abs(number) ``` **参数说明:** - `number`: 必需的参数,可以是任何有效的数值表达式。如果`number`包含`Null`,则函数返回`Null`;如果`number`是未初始化的变量,则函数返回0。 **返回值:** 返回与`number`相同类型的绝对值。 **示例:** ```vb Dim myNumber As Integer myNumber = -10 Debug.Print Abs(myNumber) ' 输出结果为10 ``` --- #### Array函数 **功能:** 创建并返回一个包含指定项的数组。 **语法:** ```vb Array(arglist) ``` **参数说明:** - `arglist`: 一系列用逗号分隔的项目。这些项目可以是常量、变量或其他表达式。 **返回值:** 返回一个包含所有项目的数组。 **示例:** ```vb Dim arrMyArray As Variant arrMyArray = Array("Monday", "Tuesday", "Wednesday") Debug.Print arrMyArray(1) ' 输出结果为"Tuesday" ``` --- #### Asc函数 **功能:** 返回字符串中第一个字符的ASCII码。 **语法:** ```vb Asc(string) ``` **参数说明:** - `string`: 必需的参数,可以是任何有效的字符串表达式或包含字符串的变量。 **返回值:** 返回一个整数,表示字符串中第一个字符的ASCII码。 **示例:** ```vb Dim strCharacter As String strCharacter = "A" Debug.Print Asc(strCharacter) ' 输出结果为65 ``` --- #### Atn函数 **功能:** 返回一个数值的反正切值。 **语法:** ```vb Atn(number) ``` **参数说明:** - `number`: 必需的参数,可以是任何有效的数值表达式。 **返回值:** 返回一个Double类型的数值,表示弧度制角度的反正切值。 **示例:** ```vb Dim dblAngle As Double dblAngle = 1 Debug.Print Atn(dblAngle) ' 输出结果约为0.785398163 ``` --- #### CallByName函数 **功能:** 根据变量名调用过程或属性设置/获取。 **语法:** ```vb CallByName(obj, name, [let/fn], [paramlist]) ``` **参数说明:** - `obj`: 必需的对象引用。 - `name`: 要调用的过程或属性名称。 - `let/fn`: 指定如何处理`name`。如果使用`Let`,则调用属性设置器;如果使用`Fn`,则调用属性获取器;如果省略,则调用过程。 - `paramlist`: 传递给`name`的参数列表。 **示例:** 假设有一个对象`MyObject`具有方法`MyMethod`和属性`MyProperty`: ```vb Dim obj As New MyObject CallByName obj, "MyMethod", , 10 CallByName obj, "MyProperty", "Let", 5 ``` --- #### CBool等类型转换函数 **功能:** 用于将变量转换为特定的数据类型。 **语法:** ```vb CBool(expression) CByte(expression) CChar(expression) CDate(expression) CDbl(expression) CDec(expression) CInt(expression) CLng(expression) CSByte(expression) CShort(expression) CSng(expression) CUInt(expression) CLngLng(expression) CVar(expression) CStr(expression) ``` **参数说明:** - `expression`: 要转换的表达式。 **返回值:** 返回与指定数据类型匹配的值。 **示例:** ```vb Dim strValue As String strValue = "123" Dim intValue As Integer intValue = CInt(strValue) ' intValue现在等于123 ``` --- #### Choose函数 **功能:** 根据索引选择并返回多个值中的一个。 **语法:** ```vb Choose(index, choice, ...) ``` **参数说明:** - `index`: 索引值,用于选择要返回的值。 - `choice`: 一个或多个选项,其中至少有一个。 **返回值:** 返回`index`指定位置的值。 **示例:** ```vb Dim choiceIndex As Integer choiceIndex = 2 Dim result As String result = Choose(choiceIndex, "Apple", "Banana", "Cherry") Debug.Print result ' 输出结果为"Banana" ``` --- #### Chr函数 **功能:** 返回指定ASCII码对应的字符。 **语法:** ```vb Chr(code) ``` **参数说明:** - `code`: 字符的ASCII码。 **返回值:** 返回一个字符。 **示例:** ```vb Dim code As Integer code = 65 Debug.Print Chr(code) ' 输出结果为"A" ``` --- #### Command函数 **功能:** 返回当前命令行的名称。 **语法:** ```vb Command() ``` **返回值:** 返回一个字符串,表示当前命令行的名称。 **示例:** ```vb Debug.Print Command() ' 输出结果取决于当前命令行的名称 ``` --- #### Cos函数 **功能:** 返回一个角的余弦值。 **语法:** ```vb Cos(number) ``` **参数说明:** - `number`: 角度的弧度值。 **返回值:** 返回一个Double类型的数值,表示该角的余弦值。 **示例:** ```vb Dim angle As Double angle = 0 Debug.Print Cos(angle) ' 输出结果为1 ``` --- #### CreateObject函数 **功能:** 创建一个对象,并返回对该对象的引用。 **语法:** ```vb CreateObject(progID) ``` **参数说明:** - `progID`: 对象的程序标识符。 **返回值:** 返回一个对象的引用。 **示例:** ```vb Dim myWorkbook As Object Set myWorkbook = CreateObject("Excel.Application") ``` 以上内容概述了部分EXCEL VBA函数的功能、语法、参数及示例,涵盖了从数学函数到文本处理再到对象创建等多个方面。这些函数在编写VBA代码时非常有用,可以帮助程序员实现复杂的功能和逻辑。