Home |
Search |
Today's Posts |
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi,
two questions on Collections: 1. in VBA, the only way to copy the items (not just the references) of a collection c1 to another collection c2 is to go through each element of c1 with a For Each Next and Add each item to c2, right? 2. I have a collection c1 containing some objects to be deleted (the ones for which the Defective property is True). I want to delete them from c1 and at the same time to delete the objects in the same position from another collection c2. See code below: Sub RemoveDefectivesfromColns(c1 As Collection, c2 As Collection) Dim obj as Object, I As Long For I=1 to c1.Count Set obj =c1(I) If obj.Defective Then c1.Remove I c2.Remove I End If Next I End Sub Problems: number of elements in c1 and c2 is changing as the cycle goes on, so sooner or later the Remove method will fail (because I exceeds the number of remaining elements in c1 and c2). How can I solve this? Also, is there a way to do this with a For Each In Next? Would it be faster? Thanks, Best Regards deltaquattro c1.Add Item:="woof" Set c2=c1 makes |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
A List of Collections and Custom Collections | Excel Programming | |||
Removing a collection item via key name check | Excel Programming | |||
Collection Problems | Excel Programming | |||
Collection Class problems | Excel Programming | |||
Removing an Item From a Collection | Excel Programming |