habe so etwas "ähnliches" schon mal gemacht.
Ich habe den Einbauplatz per VBA von Geräten gesucht.
Hier ein paar Ausschnitte von Script.
Dim oSel As ObjectItems
Dim oLocation1 As ObjectItem
Set oSel = Application.Selection(1).Project.FindObjects(aucObjLocation, aucSearchDeep)
Set oSel1 = Application.Selection(1).Project.FindObjects(aucObjDevice, aucSearchDeep)
For Each oLocation1 In oSel 'Ab hier werden alle Arbeitsplätze durchsucht
position1 = oLocation1.FullName
exworksheet.Cells(i + 1, 1) = position1 'schreibe Einbauplatz in eine Excel z.B +A1
Next oLocation1
Den Wert position1 kann man dann auch wieder in ein Attribut zurückschreiben damit dieser dann am Shape angezeigt wird.
Ein Beispiel von mir wo ich X und Y Koordinaten von Shape zurückgespeichert habe
' Schreibt den X und Y Wert ins Feld Koordinaten unter Betriebsdaten damit diese über das Shape angezeigt werden
Set oItem = Application.Selection(1).Children.Item(I)
oItem.Attributes.ItemByID(aucAttrCoordinates).Value = "X= " & sPartx & " Y= " & sParty
Call oItem.Store
Zum Schluß aber den Punkt "oItem.Store" nicht vergessen sonst wird der Wert nicht gespeichert.
Gruß
Arnd van Uden
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP