J'imagine que tu as enregistré une macro pour avoir ce résultat ?
Il faut plutôt utiliser une fonction "For Each" qui va parcourir toutes les dimensions de la pièce, un exemple (qui va récupérer les valeurs de toutes les cotes pour toutes les configurations), voir cette rubrique de l'aide API :
Je ne suis pas passé par une fonction for each mais lors de la création de ma cote je lui ai donné le nom que je voulait au passge.
ci dessous le code modifié et qui fonctionne.
Dim myDisplayDim As Object Set myDisplayDim = swmodel.AddDimension2(-0.15, hauteur / 2, 0) 'ajout d'une cote de l'objet sélectionné au point x-.05 y0.1 z0) Dim myDimension As Object Set myDimension = swmodel.Parameter("H@Esquisse2") Set swSelMgr = swmodel.SelectionManager Set swDispDim = swSelMgr.GetSelectedObject5(1) Dim swDim As SldWorks.Dimension Set swDim = swDispDim.GetDimension Dim nom_cote As String