调用VBA函数

时间:2014-07-11 13:40:24

标签: excel vba function excel-vba

我有一个调度excel宏,它将每月的每日列表作为单独的Excel工作表。在我的宏观中,“星期日”表总计了每位员工的每小时工作时间,并给出了每周总计。我试图创建一个函数,允许我选择我需要哪些表格,只有上下范围,但我无法让它工作。有什么问题?目前我有:

Function SampleSum(ByVal ZZ As Integer, ByVal XX As Integer) As Integer
Application.Volatile
SampleSum = Sheets(ZZ).Range("BA5") + Sheets(XX).Range("BA5")
Sheets(XX).Range("BB5") = SampleSum
End Function

我希望能够用任意2个数字或变量“调用”该函数代替ZZ& XX。

1 个答案:

答案 0 :(得分:1)

首先,因为你宣布你的应用程序是“volatile”,所以我不会从那里以编程方式编辑你的工作表,因为它可能会循环: http://msdn.microsoft.com/en-us/library/office/ff195441%28v=office.15%29.aspx 二,功能RETURNS的东西。子程序没有。如果你只需要在单元格中写入,我建议使用子程序。

Function SampleSum(ByVal ZZ As Integer, ByVal XX As Integer) As Integer
    Application.Volatile
    SampleSum = Sheets(ZZ).Range("BA5") + Sheets(XX).Range("BA5")
End Function

Sub Main()
    Sheets(XX).Range("BB5") = SampleSum(ZZ, XX)
End Sub

“Main”Sub中的ZZ和XX可以是您选择的数字

相关问题