VBA AutoCAD : passer le maintien d'une entité à SendCommand

Parfois, on a besoin d'utiliser SendCommand pour pouvoir réaliser certaines opérations que VBA ne supporte pas (la fonction LISSAGE par exemple). Et dans certaines situations, on veut pouvoir passer une référence à un objet précédemment créé. Dans ce cas on peut utiliser la fonction handent d'AutoLISP. handent prend en argument le maintien d'une entité et renvoie un nom d'entité qui est interprété par la ligne de commande d'AutoCAD :

Set circle1 = ThisDrawing.ModelSpace.AddCircle(p1, r1)
Set circle2 = ThisDrawing.ModelSpace.AddCircle(p2, r2)
ThisDrawing.SendCommand "_Loft" & vbCr _
        & "(handent """ & circle1.Handle & """)" & vbCr _
        & "(handent """ & circle2.Handle & """)" & vbCr _
        & vbCr _
        & vbCr

Notez bien que le maintien doit être spécifié entre deux guillemets doubles (qu'on doit doubler pour les spécifier dans une chaîne littérale en VBA).

Add new comment