eagle4 Posté(e) le 28 septembre 2005 Posté(e) le 28 septembre 2005 Bonsoir à tous. Quelqu'un peut-il m'aider, voici mon problème : Situation de départ, j'ai le calque "0" qui a comme couleur "BLANC" et comme type de ligne "CONTINU". En ouvrant un dessin , il arrive que celui-ci soit sous un calque "X" avec comme couleur "Y" par exemple et un type de ligne "Z".Comment puis-je faire en VBA pour passer en calque "0" avec la couleur "DuCalque" et le type de ligne "DuCalque" ? Merci de vos réponses Eagle4 Regarde devant, derrière apporte des regrets, les côtés envies et jalousie
Pako Posté(e) le 29 septembre 2005 Posté(e) le 29 septembre 2005 Salut Eagle4, Premièrement, tu ne peux pas attribué la couleur "ByLayer" à un Layer.Comme l'indique l'aide : If you use acByLayer, new objects assume the color of the layer upon which they are drawn. The value acByLayer is not valid for a Layer object. Mais, tu peux l'attribuer à toutes autres objets, comme à un block. Par contre, tu peux modifier directement la couleur et le type de ligne, à l'ouverture d'un dessin, en utilisant le module d'événement "ThisDrawing" (dans le dossier AutoCAD Objects). Voici une procèdure à insérer dans ce module : Private Sub AcadDocument_Activate() ....Dim LayerSet As AcadLayer....Set LayerSet = thisdrawing.Layers("0")........LayerSet.color = acWhite........LayerSet.Linetype = "Continuous" End Sub amicalement, l'ACADien ! http://img124.exs.cx/img124/7999/start.gif
eagle4 Posté(e) le 29 septembre 2005 Auteur Posté(e) le 29 septembre 2005 Salut Pako et merci de ta réponse. Mais ce n'est pas tout à fait ce que je recherche car si je comprend bien le sub que tu m'as donné positionne la couleur et le type de ligne du plan "0" , mais le dessin par lui même conserve ses caractéristiques du départ. J'arrive correctement à passer dans le calque "0" mais je n'arrive pas à avoir la couleur "Ducalque" et ce qui est plus gênent pour moi, le type de ligne "Ducalque". Merci de ton aide Eagle4 Regarde devant, derrière apporte des regrets, les côtés envies et jalousie
Pako Posté(e) le 29 septembre 2005 Posté(e) le 29 septembre 2005 Voici ce que j'ai trouvé finalement...... Private Sub AcadDocument_Activate() ....ThisDrawing.SetVariable "cecolor", "ByLayer"....ThisDrawing.SetVariable "celtype", "ByLayer" End Sub Simple et pratique...ça fonctionne, mais étrangement lorsque j'écris _.cecolor ou _cecolor,ça ne fonctionne plus.....à le côté obscure de VBA ! Excuse moi, ma version est en anglais ! amicalement, [Edité le 29/9/2005 par Pako] l'ACADien ! http://img124.exs.cx/img124/7999/start.gif
eagle4 Posté(e) le 30 septembre 2005 Auteur Posté(e) le 30 septembre 2005 Salut PAKO Merci c'est juste ce qu'il me faut @+ Eagle4 Regarde devant, derrière apporte des regrets, les côtés envies et jalousie
Messages recommandés
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 compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant