宏中的平均函数不返回值

时间:2018-04-13 10:01:13

标签: vba excel-vba average worksheet-function excel

Dim XXXX as string

XXXX = Sheets("Sheet1").Application.WorksheetFunction.Average(Range("J7:J607")).value
Sheets("Log").Cells(2, "Z").value = XXXX

End Function

请参阅上面的宏。我需要J列中可用值的平均值,并且需要将该平均值粘贴到" Log"片。但是价值没有返回,而是将其留作空白单元格。但代码运行正常,没有显示任何错误。

请帮我解决这个问题。

2 个答案:

答案 0 :(得分:1)

您正在尝试写入Function中的另一个单元格,然后我猜您是从工作表中调用它?

请改用Sub。当然,你不能从工作表中调用它。

试试这个

Private Sub Sample()
    Dim XXXX As String

    With Sheets("Sheet1")
        XXXX = Application.WorksheetFunction.Average(.Range("J7:J607"))
        Sheets("Log").Cells(2, "Z").Value = XXXX
    End With
End Sub

如果你想使用一个函数并从工作表中调用它,那么就像这样使用它

Private Function GetAvg()
    GetAvg = Application.WorksheetFunction.Average(Sheets("Sheet1").Range("J7:J607"))
End Function

然后在单元格Z2中输入此

=GetAvg()

答案 1 :(得分:0)

以下代码可以代替您当前的代码:

<uses-permission android:name="com.android.vending.BILLING"/>