我正在尝试使用辅助函数来获取将其存储到变体中的范围,但我遇到了一些问题。
起初,我只是简单地尝试了以下方法:
Function GetRange(RangeLetter As String, Optional LastUniqueLine As Long = 1048576) As Varient
Static LastUniqueLineStr As String
If LastUniqueLineStr = "" Then
LastUniqueLineStr = LastUniqueLine
End If
Set GetRange = Range(RangeLetter + "2:" + LastUniqueLineStr)
End Function
但这似乎不起作用。 Range()
似乎超出了这里的范围或其他东西,所以我想我必须通过工作表才能让它工作:
Function GetRange(RangeLetter As String, Optional LastUniqueLine As Long = 1048576, Optional ActiveSheet As Worksheet) As Variant
Static LastUniqueLineStr As String
Static CurrentSheet As Worksheet
'If CurrentSheet = Nothing Then
Set CurrentSheet = ActiveSheet
'End If
If LastUniqueLineStr = "" Then
LastUniqueLineStr = LastUniqueLine
End If
Set GetRange = CurrentSheet.Range(RangeLetter + "2:" + LastUniqueLineStr) ' This is the line where I get the error.
End Function
这也行不通。我收到以下错误:
Run-time error '1004':
Method 'Range' of object 'Worksheet' failed
当我调用它时,如何获得我想要的范围?