Makro - Hinzufügen einer Notiz zu einem Teil in einer Zeichnung

Hallo
Ich erstelle ein Makro. Ich habe eine Ansicht mit einer Baugruppe und möchte auf eines der Teile zeigen, um eine Notiz hinzuzufügen, die mit einem Link zu einer Eigenschaft verknüpft ist

Ich habe es bereits geschafft, durch den Komponentenbaum der Teile zu gelangen, die sich in der Ansicht befinden, und ich schaffe es, die
swComp
und den Namen mit . Name2 oder der Pfad .getPathName
und ich schaffe es auch, die Körper/Gesichter aufzulisten

Ich schaffe es auch, eine Notiz über mein Sehvermögen hinzuzufügen

Ich kann das Stück, an das ich die Notiz anhängen möchte, nicht auswählen. Ich versuche es mit .select4 und anderen Funktionen, die ich gefunden habe, aber unmöglich. Es ist wirklich die Verbindung zwischen dem Stück und der Note, die ich nicht machen kann

Vielen Dank im Voraus
Cédric

Hallo

Warum nicht einfach eine Notizenbibliothek erstellen, wie ich es getan habe, denn Sie müssen Ihr Stück sowieso auswählen, um es anzuhängen, und dann ziehen Sie es per Drag & Drop und das war's.

3 „Gefällt mir“

Danke, aber ich habe bereits Bibliotheken, was ich tun möchte, ist, die Notizen zu den Stücken automatisch hinzuzufügen

Hier ist der Code, den ich derzeit verwende. Es wählt das Stück gut aus, es erzeugt eine Note, aber es ist nicht an die Auswahl angehängt

Dim swApp As Object
Dim swModel As SldWorks.ModelDoc2
Dim swSelMgr As SldWorks.SelectionMgr
Dim boolstatus As Boolean
Dim swModelDocExt As SldWorks.ModelDocExtension

Sub main()

    Set swApp = Application.SldWorks
    Set swModel = swApp.ActiveDoc
    Set swModelDocExt = swModel.Extension
    Set swSelMgr = swModel.SelectionManager
    Set swComp = swSelMgr.GetSelectedObject6(1, -1)
   
    boolstatus = swModel.ActivateView("Vue de mise en plan4")
    boolstatus = swModel.Extension.SelectByID2("Tuy entree huile 49477-23@Vue de mise en plan4/Pipe_1-Tuy entree huile 49477-1@Tuy entree huile 49477/3inSchedule10_2^Pipe_1-Tuy entree huile 49477-3@Pipe_1-Tuy entree huile 49477", "COMPONENT", 0, 0, 0, False, 0, Nothing, 0)
    Debug.Print boolstatus
    
    Dim myNote As Object
    Set myNote = swModel.InsertNote("Lg= $PRPMODEL:""Longueur"" mm")
End Sub

Hallo;
Siehe API-Hilfe:
https://help.solidworks.com/2022/english/api/sldworksapi/Attach_Annotation_to_Entity_Example_VB.htm?verRedirect=1

und im Einzelnen: SetAttachedEntities

Herzliche Grüße.

1 „Gefällt mir“