Macro - Voeg een opmerking toe over een onderdeel in een tekening

Hallo
Ik ben een macro aan het maken. Ik heb een uitzicht met een assemblage en ik wil naar een van de stukken wijzen om er een notitie aan toe te voegen met een link naar een eigendom

Ik ben er al in geslaagd om door de componentenboom van de onderdelen die in de weergave zijn te komen, en het lukt me om de
swComp
en om de naam te hebben met . Name2, of het .getPathName-pad
en het lukt me ook om de lichamen/gezichten op te sommen

Het lukt me ook om een opmerking over mijn gezichtsvermogen toe te voegen

Ik kan het stuk niet selecteren waaraan ik het briefje wil bevestigen. Ik probeer het met .select4 en andere functies die ik heb gevonden, maar onmogelijk. Het is echt de link tussen het stuk en de noot die ik niet kan maken

Bij voorbaat dank
Cédric

Hallo

Waarom maak je niet gewoon een notitiebibliotheek zoals ik deed, want je moet je stuk selecteren om het toch bij te voegen en dan sleep je en zet je neer en dat is alles.

3 likes

bedankt, maar ik heb al bibliotheken, wat ik wil doen is automatisch de notities op de stukken toevoegen

Dit is de code die ik momenteel gebruik. Het selecteert het stuk goed, het maakt een notitie aan, maar het is niet gekoppeld aan de selectie

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;
Zie API Help:
https://help.solidworks.com/2022/english/api/sldworksapi/Attach_Annotation_to_Entity_Example_VB.htm?verRedirect=1

en meer specifiek: SetAttachedEntities

Vriendelijke groeten.

1 like