Aller au contenu

Identification directe d\'un attribut


Messages recommandés

Posté(e)

Bonjour à tous,

 

Je cherche à reproduire en VBA la commande qui permet d'inactiver un calque en sélectionnant un objet dudit calque (commande existante dans EXPRESS, mais que je ne peux installer sur ma version d'Autocad).

 

J'y suis parvenu mais cela ne focntionne pas aussi bien pour les blocs ayant des attributs dans des calques différents.

 

Question:

En sélectionnant un bloc en cliquant sur un attribut, comment puis-je identifier directement cet attribut et donc son calque. Je ne parviens, pour l'instant, qu'à identifier le bloc et son calque d'insertion.

 

Merci d'avance de votre aide.

:)

 

 

Posté(e)

Bonjour,

C'est un 1er jet mais bon...

 

Sub ActiveCalque()

 

Dim ObjEntite As AcadEntity

Dim VarPoint As Variant

Dim VarMatrice As Variant

Dim VarParents As Variant

Dim ObjCalque As AcadLayer

 

With ThisDrawing.Utility

.GetSubEntity ObjEntite, VarPoint, VarMatrice, VarParents, "Selection d'un objet:"

If ObjEntite Is Nothing Then

.Prompt vbCrLf & "Aucun objet selectionné."

Exit Sub

End If

Set ObjCalque = ThisDrawing.Layers(ObjEntite.Layer)

ThisDrawing.ActiveLayer = ObjCalque

End With

End Sub

 

Par contre, pour les explications de GetSubEntity, je laisse ça à qqn de plus compétant que moi...

 

Bonne continuation

Nous n’ héritons pas de la terre de nos ancêtres.Nous l’empruntons à nos enfants.

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité