Hi,
zuerst mal der AutoCAD-Teil mittels SelectionSet, wo Du Blockname bereits angibst. Dann sucht AutoCAD für Dich und Du musst nicht alle Elemente durchscannen, was mit VBA (insbesondere, wenn Du 64bit AutoCAD arbeitest) extrem viel langsamer ist.
Aus dem Resultat hätte ich mir dann ein Array oder Collection gebaut, in der ich per Klassendefinition Handle und Attributswerte (und was auch sonst noch notwendig ist) speichere. Dann hast Du mal alles im Memory und bist schneller als jedesmal von neuem Attributswerte aus der Blockreferenz zu lesen.
'Suchen'/'Vergleichen'/'Sortieren' solltest Du in div. VBA-Foren jede Menge Beispiele finden.
>> Sollte ich das im VBA machen? Oder ist es besser VB2008 zu verwenden?
Ich kenne weder die Aufgabe genau genug, noch hätte ich eine Mengendefinition (wie groß sind Deine Zeichnungen, wie oft brauchst Du diese Funktion) und auch Deine Fähigkeiten sind mir nicht bekannt. Da wird's mit Tips schwer ob VBA oder VS.
Würde ich es machen, hängt es ebenfalls von diesen Kriterien ab (nur meine (Un-)Fähigkeiten kenne ich ein wenig
)
- alfred -
------------------
www.hollaus.at