使用单元格

我有以下简单的function:

Public Function AddFields(field1 As Range, field2 As Range) As String AddFields = "=" + field1.Address + "+" + field2.Address End Function Private Function GetCustomerCount(monthNumber As Integer) As Range If monthNumber < 6 Then GetCustomerCount = Range("D13") ElseIf monthNumber < 12 Then GetCustomerCount = Range("D14") Else GetCustomerCount = Range("D15") End If End Function 

我从下面的子部分调用:

 Private Sub mDateLooper_OnMonth(looper As DateLooper) Cells(looper.Row, looper.Column).Value = "Månad " & CStr(looper.MonthIndex + 1) Cells(looper.Row + 1, looper.Column).Value = AddFields(GetCustomerCount(looper.MonthIndex + 1), Range("m21")) Cells(looper.Row + 2, looper.Column).Value = AddFields(Cells(looper.Row + 1, looper.Column - 1), Cells(looper.Row, looper.Column)) End Sub 

它不起作用。 我得到以下错误: 对象variables或块未设置。

GetCustomerCount = Range(“D13”)

为什么?

GetCustomerCount是一个Range

如果你想分配一个新的值/范围,你需要做这个设置。

  Set GetCustomerCount = Range("D13") 

我相信你需要确定哪个表范围适用,即ActiveSheet.Range(“D13”)