If I declared the following type:<BR><BR>Public Type EventNode<BR> index As Integer<BR> refCnt As Integer<BR> ruleId As Long<BR> refList As Collection<BR>End Type<BR><BR>And then populated a collection of EventNodes, how come the following has no effect:<BR><BR>myCollection.Item(1).refCount = myCollection.Item(1).refCount + 1<BR><BR>Instead, I have to declare a temp EventNode, set it equal to the EventNode from the collection, modify the refCount, delete the original EventNode from the collection, and add the temp EventNode to the collection to take the place of the original EventNode. This is too much work. Is this the consequence of using UDTs in VB?