Hallo zusammen
Ich bin recht neu in AutoCad und VBA und möchte von Objekten, die ich in AutoCad zeichne, die Koordinaten auslesen können. Leider klappt der Zugriff darauf nicht richtig . Was ich bereits geschafft habe, ist den Layer oder auch den Objektnamen auszulesen. Ich habe bereits in einem anderen Beitrag gefunden, dass man eine Variable definieren soll als:
Dim blockref As AcadBlockReference
und im Anschluss dann diese "blockref" als einen entity setzt.
Set blockref = entity
Leider weiß ich nicht, was dieser 'entity' sein soll, da dieser Eintrag bei mir als solches nicht verfügbar ist. Ich bekomme in Folge dann den 'Laufzeitfehler 424 - Objekt erforderlich'. Weiß jemand wie ich auf die Koordinaten der Objekte zugreifen kann, bzw. was an meinem Code falsch ist?
Danke vorab und liebe Grüße
P.S. Hier der Code und noch ein Bild von meiner Arbeitsoberfläche:
Private Sub CommandButton1_Click()
Dim j As Integer
Dim x As Integer
Dim Objekt(0 To 2)
UserForm1.Hide
Dim startpt(0 To 2) As Double
'startpt(0) = 0: startpt(1) = 0: startpt(2) = 0
'endpt = ThisDrawing.Utility.GetPoint(, "Wähle Endpunkt: ")
'ThisDrawing.ModelSpace.AddLine startpt, endpt
Dim blockref As AcadBlockReference
Set blockref = entity
Set allblocks = ThisDrawing.Blocks
x = ThisDrawing.ModelSpace.Count
For j = 0 To x - 1
Objekt(0) = ThisDrawing.ModelSpace.Item(j).ObjectName
Objekt(1) = ThisDrawing.ModelSpace.Item(j).Layer
Objekt(2) = ThisDrawing.ModelSpace.Item(j).Layer
koord = blockref.InsertionPoint
ListBox1.AddItem Objekt(0)
ListBox1.AddItem Objekt(1)
ListBox1.AddItem Objekt(2)
ListBox1.AddItem koord(0)
ListBox1.AddItem
Next
UserForm1.Show
End Sub
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP