我正在尝试将另一个工作表中的范围保存到变量中,然后将其与单元格进行比较。我有这个代码:
Function collectUtfall(A1 As String, Ax As String)
Dim rng As Variant
Dim sum as Integer
sum = 0
Set rng = Sheets("Utfall").Range("N2").Value <------- This line
If rng = Ax Then
sum = sum + 10
Else: sum = 33
End If
collectUtfall = sum
End Function
问题是它没有按照我希望的方式行事。我收到#Value 错误,我已将其缩小到代码中标记的行。如果我删除该行,我不会收到错误,但结果当然只有 0。
我也尝试将 rng As Range 调暗,但不起作用。
可能是什么问题?
编辑:原始问题已解决,但遇到了另一个问题。 如果我使用此代码(小的更改),我会再次遇到相同的错误。我使用偏移量是错误的还是现在问题出在哪里?
Function collectUtfall(A1 As String, Ax As String)
Dim rng As Variant
Dim sum As Integer
sum = 0
rng = Sheets("Utfall").Range("M2:O272").Value
If rng.Offset(0, 1) = Ax Then
sum = sum + 10
Else: sum = 33
End If
collectUtfall = sum
End Function