Hallo,
oSelection.add(oIrgendwas) fügt das Object oIrgendwas zur Selektion hinzu.
Was du vor hast, funktioniert allerdings ganz anders.
Es gibt nämlich nur EINE Selection, die zum aktiven Dokument gehört (die CATIA.ActiveDocument.Selection), nicht zwei oder mehrere.
Du must die Objekte in einem Array zwischenspeichern. Ein Beispiel zur Veranschaulichung. Du musst das Zeug dann noch vorher Filtern (nach deinen Bedingungen)
Sub CATMain()
' deine Elemente sind selektiert
Set oSelection = CATIA.ActiveDocument.Selection
'dynamisches Array (Feld) erzeugen
Dim aArray()
ReDim aArray(0)
'Selection auslesen
For i = 1 to oSelection.Count
Set aArray(UBound(aArray)) = oSelection.Item(i).Value
'dynamisches Array immer um ein Feld erweitern
ReDim Preserve aArray(UBound(aArray)+1)
Next
'Selection leeren
oSelection.Clear
'Array auslesen & der Selection zufügen, sofern Bedingung erfüllt ist
For j = 0 to UBound(aArray) - 1
If sWasAuch = WasImmerDuWillst Then
oSelection.Add(aArray(j))
End if
Next
'Fertig
End Sub
Hoffe es hilft dir, Gruß & ein schönes Wochenende
------------------
tomtom1972
[Diese Nachricht wurde von tomtom1972 am 31. Mrz. 2007 editiert.]
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP