• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 191
  • Last Modified:

Question about "Nothing"

Like the title actually I'm referring to the keyword Nothing

I have a loop the goes through a bunch of object when it has finished with all the object the object will be set to Nothing what I need is a loop that checks this object at the end of the loop and continues to process until it becomes nothing, ie.

do
  proccesing
loop while not IsNothing(MyVariable)

IsNothing is not a real function unfortunately and I can do something not MyVariable = Nothing.  So how do I do something like the about
0
Jagar
Asked:
Jagar
  • 4
  • 3
  • 2
  • +1
1 Solution
 
a111a111a111Commented:
here is a code for your Q

Private Sub Command1_Click()

Dim Found, MyObject, MyCollection
Found = False   ' Initialize variable.
For Each MyObject In MyCollection   ' Iterate through each element.
    Set MyObject = Nothing
Next

End Sub


0
 
clifABBCommented:
So, create a function 'IsNothing':
Public Function IsNothing(objTarget As Object) As Boolean
  Dim sText As String
 
  On Error Resume Next
  sText = objTarget.Name
  If Err.Number = 91 Then
    IsNothing = False
  Else
    IsNothing = True
  End If
End Function

0
 
JagarAuthor Commented:
No in the process I control the flow through the object.  It is not necessarily from beginning to end.  It can move forward and back sides.  Skip this or that depending on user interaction with the flow.
So I can just iterate through each element.
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
bernfarrCommented:
What about the Is operator?

do
   ...
   Set MyVariable = Nothing
   ...
loop while not (MyVariable Is Nothing)

0
 
JagarAuthor Commented:
Thanks Cliff that's kinda the work around that I have been using.  But did it in the processing because it would give an error when it tried to do the processing on the nothing object.

I was hoping that there would be some function or something that I overlooked.
Well I guess not, so resubmit as an answer and I'll give you the points.
0
 
clifABBCommented:
bernfarr:
Why didn't you submit that as an answer!
0
 
clifABBCommented:
Before I submit, check out bernfarr's answer.  If you were to code:
do
  proccesing
loop while not (MyVariable Is Nothing)
it should work as you want.

0
 
bernfarrCommented:
I tried, but was beaten by the previous one.

What about the Is operator?

do
   ...
   Set MyVariable = Nothing
   ...
loop while not (MyVariable Is Nothing)
0
 
JagarAuthor Commented:
Thanks that's what I was looking for.  It's amazing some of the things you forget about.
Thanks Cliff for your help.
0
 
clifABBCommented:
That and the things you just don't think about.  I hate writing code that relies on an error.  Thanks bernfarr!
0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

  • 4
  • 3
  • 2
  • +1
Tackle projects and never again get stuck behind a technical roadblock.
Join Now