Object variables
Brad,
This may do what you want, but "MyRange" would have to be
a named range in the sheet:
Dim rngVar1 As Range
Dim strVar2 As String
With Range("MyRange")
Set rngVar1 = .Find(x)
strVar2 = rngVar1.Address
End With
Range(strVar2).Activate
-----Original Message-----
I ran into a proble trying to set a declared object
variable to a value,
like this:
Dim ObjVar1, ObjVar2 As Object
With Range("MyRange")
Set ObjVar1 = .Find(x)
ObjVar2 = ObjVar1.Address
End With
Range(ObjVar2).Activate
The problem has to do with the fact that the second
object variable was set
to Nothing by default, and I don't know how to set it to
Empty which is what
I have to do to in order to get it to accept a value.
I've gone around the
problem by setting it to a Variant data type, and I know
I can go around it
by not declaring it in the first place, but I am curious
to find out why
ObjVar1 in the declaration statment is set to Empty and
ObjVar2 is set to
nothing, try this:
Paste this code into VBA and step into it. Look at the
value of objMyObject
and objMyObject1 and explain to me why they are not both
Empty.
Sub test()
Dim objMyObject, objMyObject2 As Object
End Sub
Thanks
.
|