广场舞舞蹈灯笼舞:Excel VBA怎样为变量赋值

来源:百度文库 编辑:查人人中国名人网 时间:2024/04/19 03:10:40
比如我要直接把A1~A5单元格的平均数赋值给PJS这个变量,怎么做

Dim PJS As Integer
PJS=Average(A1:A5)
我是这样编写的 但是一直报错

Average是EXCLE的函数,在VBA中不能直接使用。

从 Visual Basic 中调用工作表函数
在 Visual Basic 中,通过 WorksheetFunction 对象可使用 Microsoft Excel 工作表函数。

以下 Sub 过程使用 Min 工作表函数来决定在某个单元格区域中的最小值。首先,将变量 myRange 声明为 Range 对象,然后将其设置为 Sheet1 上的 A1:C10 单元格区域。指定另一个变量 answer 为对 myRange 应用 Min 函数的结果。最后,answer 的值就被显示在消息框中。

Sub UseFunction()
Dim myRange As Range
Set myRange = Worksheets("Sheet1").Range("A1:C10")
answer = Application.WorksheetFunction.Min(myRange)
MsgBox answer
End Sub

如果您使用的工作表函数需要一个单元格区域引用作为参数,则必须指定一个 Range 对象。例如:您可以用 Match 工作表函数搜索单元格区域。可以在工作表单元格中输入公式,如“=MATCH(9,A1:A10,0)”。但是,您应在 Visual Basic 过程中指定一个 Range 对象来获取相同的结果。

Sub FindFirst()
myVar = Application.WorksheetFunction _
.Match(9, Worksheets(1).Range("A1:A10"), 0)
MsgBox myVar
End Sub

不同的.
range("a1").value是经过处理后的值,如设置A1单元格为数字型,小数点后2位,那么任何输入到A1的输入都将进入这个转化,存入到value中