Pour pouvoir ajouter une contrainte, dans une macro jai besoin de selectionner une face nommée d'une piece dans un assemblage, j'ai quelquchose comme ci dessous, mais cela ne marche pas
' boolstat = swModelDocExt.SelectByID2("Fond@col_60-1@ass", "PLANE", 0, 0, 0, True, 1, Nothing, swSelectOptionDefault)
Quelqu'un peut'il m'aider ?
merci d'avance
AF
Salut, tu connais le nom de la pièce ?
oui
c'est : col_60-1
ass est le nom de l'assemblage
le nom de la face est : Fond
Je viens de voir que ta ligne commence par une apostrophe : il faut l'enlever car c'est le signe pour les commentaires et cela ignore ce qu'il y a écrit après !
' 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)
Exact
mais c'etait un essai qui ne marche pas aussi je l'avais mis en commentaire
cdlt
Est-ce que le type est bon ?
Tu indiques un plan "PLANE" alors que tu parles d'une face "FACE"
http://help.solidworks.com/2015/English/api/swconst/SOLIDWORKS.Interop.swconst~SOLIDWORKS.Interop.swconst.swSelectType_e.html
Des infos intéressantes ici aussi :
http://help.solidworks.com/2015/English/api/sldworksapi/Get_Component_Face_By_Name_Example_VB.htm
En fait ici ils disent que cette instruction ne marche pas et qu'il faut utiliser GetEntityByName puis Select4
https://forum.solidworks.com/thread/62936
Un exmple de cette instruction GetEntityByName :
http://help.solidworks.com/2014/English/api/sldworksapi/Get_Component_Name_From_Selected_Entity_Example_VB.htm
Ok je vais regarder tout cela
mais mon but est de ne pas avoir d'intervention humaine
cdlt
1 « J'aime »
Avec GetEntityByName il n'est pas question d'intervention humaine ! Et je pense que ça fonctionnera mieux que "SelectByID2".
Effectivement la solution se trouve dans cet exemple :
http://help.solidworks.com/2015/English/api/sldworksapi /Get_Component_Face_By_Name_Example_VB.htm
j'ai joint une partie de mon programme
cdlt
select_component_face_by_name_example_vba.txt
pl
Juin 9, 2016, 11:56
12
Et le programme fonctionne maintenant ?
Si non, quelle ligne est en erreur et quelle est l'erreur ?
oui je n'ai pas été clair
le bout de programme fonctionne
merci
AF