Macro selecteer een benoemd vlak van een onderdeel in een merk

Om een beperking te kunnen toevoegen, moet ik in een macro een benoemd gezicht van een onderdeel in een assembly selecteren, ik heb iets zoals hieronder, maar het werkt niet

' boolstat = swModelDocExt.SelectByID2("Fond@col_60-1@ass", "PLANE", 0, 0, 0, True, 1, Nothing, swSelectOptionDefault)

Kan iemand mij helpen?

Bij voorbaat dank

AF

 

Hallo, weet je de naam van het stuk?

Ja

Het is: col_60-1

ASS is de naam van de assemblage

de naam van het gezicht is: Fond

Ik zag net dat je regel begint met een apostrof: het moet worden verwijderd omdat het het teken is voor opmerkingen en het weet niet wat er na staat!

   ' boolstat = swModelDocExt.SelectByID2("Fond@col_60-1@ass", "PLANE", 0, 0, 0, True, 1, Nothing, swSelectOptionDefault)

=>

 boolstat = swModelDocExt.SelectByID2("Fond@col_60-1@ass", "PLANE", 0, 0, 0, True, 1, Nothing, swSelectOptionDefault)

Juist

maar het was een poging die  niet werkte, dus ik had het in de reacties gezet

CDLT

 

Is de man goed?

Je geeft een vliegtuig "PLANE" aan terwijl je het hebt over een gezicht "FACE"

http://help.solidworks.com/2015/English/api/swconst/SOLIDWORKS.Interop.swconst~SOLIDWORKS.Interop.swconst.swSelectType_e.html

Interessante informatie ook hier:

http://help.solidworks.com/2015/English/api/sldworksapi/Get_Component_Face_By_Name_Example_VB.htm

 

Sterker nog, hier zeggen ze dat deze instructie niet werkt en dat je GetEntityByName moet gebruiken en dan Select4 

https://forum.solidworks.com/thread/62936

Een voorbeeld van deze GetEntityByName instructie :

http://help.solidworks.com/2014/English/api/sldworksapi/Get_Component_Name_From_Selected_Entity_Example_VB.htm

Oké, ik zal dit allemaal onderzoeken

Maar mijn doel is niet om menselijke tussenkomst te hebben

CDLT

1 like

Met GetEntityByName  is er geen sprake van menselijk tussenkomst! En ik denk dat het beter zal werken dan "SelectByID2".

De oplossing ligt inderdaad in dit voorbeeld:

http://help.solidworks.com/2015/English/api/sldworksapi /Get_Component_Face_By_Name_Example_VB.htm

Ik heb een deel van mijn programma bijgevoegd

CDLT


select_component_face_by_name_example_vba.txt

En het programma werkt nu?

Zo nee, welke regel is fout en wat is de fout?

Ja, ik was niet duidelijk

De programmatip werkt

Bedankt

AF