brownwatercat
New Member
- Joined
- Oct 22, 2018
- Messages
- 3
This is a clean code question:
I have always been taught that after setting a range in vba code, that to free up resources I need to reset the range object back to Nothing after I have used it (eg Set MyRange = Nothing). However, when I set a range in the return value of function I do not seem to have an opportunity to do the clean-up.
In the example above I am able to reset MyRange to Nothing, but What about TestRange? Does it not also have to be reset?
I have always been taught that after setting a range in vba code, that to free up resources I need to reset the range object back to Nothing after I have used it (eg Set MyRange = Nothing). However, when I set a range in the return value of function I do not seem to have an opportunity to do the clean-up.
Code:
Sub Test()
Dim MyRange as Range
Set MyRange = TestRange("A1:C3")
'Do Things
Set MyRange = Nothing
End Sub
Function TestRange(a as String) as Range
Set TestRange = Range(a)
End Function
In the example above I am able to reset MyRange to Nothing, but What about TestRange? Does it not also have to be reset?