Chanoine Posté(e) le 14 avril 2011 Posté(e) le 14 avril 2011 Bonjour à tous, j'ai fait une macro, mais je n'arrive pas à faire qu'à la fin un texte s'écrive tout seul dans AutoCAD. Elle marche très bien mais je dois rentrer le texte à la main. La macro est: _point X1,Y1 _text _j _mc X1,Y1 4 0 Je me retrouve avec un text qui a une taille de 4 et un angle de rotation de 0 au-dessus d'un point, mais quoi que je rentre ensuite, je dois taper le texte à la main. J'avais pense à quelque chose comme _point X1,Y1 _text _j _mc X1,Y1 4 0 1;; mais ça ne marche pas! :( Je voudrai ensuite pouvoir mettre ^C^C _point X2,Y2 _text _j _mc X2,Y2 4 0 puis le texte et ainsi de suite. Dans calc ça me permettrait de pouvoir calculer toutes mes macros, de les réunir grâce à CONCATENER et que donc elles s'exécutent toutes à la suite. Gros gain de temps, mais bon encore faut-il que le texte s'entre tout seul. Merci de votre aide, ;)
bryce Posté(e) le 14 avril 2011 Posté(e) le 14 avril 2011 Bonjour, La macro suivante fonctionne très bien a priori : ^C^C_point;X,Y;_text;_j;_mc;X,Y;4;0;MON TEXTE; Brice, formateur AutoCAD - Inventor - SolidWorks - ZWCad - DraftSight - SketchUp indépendant
Chanoine Posté(e) le 14 avril 2011 Auteur Posté(e) le 14 avril 2011 Bonjour,j'ai essaye la macro, et ça ne fonctionne pas.Mais je cherche, je cherche :cool: et d'échec en échec, ben... j'échoue toujours. :casstet:
bryce Posté(e) le 14 avril 2011 Posté(e) le 14 avril 2011 Qu'est-ce qui se passe exactement ? Tu pourrais faire un copier-coller du contenu de la fenêtre de texte ?Tu as quelle version d'AutoCAD ? Brice, formateur AutoCAD - Inventor - SolidWorks - ZWCad - DraftSight - SketchUp indépendant
Chanoine Posté(e) le 14 avril 2011 Auteur Posté(e) le 14 avril 2011 Bonjour, je travail sous AutoCAD LT2009.Mais j'ai trouvé la réponse sur ce site: on ne peut pas le faire:http://georezo.net/forum/viewtopic.php?id=71294néanmoins il y a une solution qui va m'obliger à créer un bloc point avec attributs:http://georezo.net/forum/viewtopic.php?id=51628Le message me disait "commande inconnue" avec la routine entre parenthèses et que je devais consulter l'aide en ligne.Merci à tous, je vais peaufiner mon dossier et créer mon bloc de base. ;)
bryce Posté(e) le 14 avril 2011 Posté(e) le 14 avril 2011 Ça fonctionne très bien, je viens de tester sur AutoCAD 2010, 2011 et LT 2010...Celui qui dit que ça n'est pas possible est à côté de la plaque ! ;)Si ça ne fonctionne pas chez toi, il y a une raison. Le message me disait "commande inconnue"Ça ne suffit pas comme info, il faudrait tout le contenu de la fenêtre de texte (touche F2) à partir du lancement de la macro. Quoi qu'il en soit, c'est sans doute plus pratique d'utiliser un bloc pour ce genre de choses. Brice, formateur AutoCAD - Inventor - SolidWorks - ZWCad - DraftSight - SketchUp indépendant
rebcao Posté(e) le 14 avril 2011 Posté(e) le 14 avril 2011 Bonsoir, Pour les MACROS textes, parfois il vaut mieux utiliser la commande _-TEXT Et vérifier si par hasard le style de texte courant n'aurait pas une HAUTEUR par défaut !? Il faut mettre la hauteur à 0 (zéro). Mettre éventuellement la variable système [surligneur] TEXTEVAL[/surligneur] à [surligneur] 1[/surligneur] Christian [Edité le 14/4/2011 par rebcao] Formateur, Consultant Expert AutoCAD, REVIT MEP, INVENTOR, télécharger , des Outils AutoCAD...cad123 @ wanadoo.fr (enlever les espaces de part et d'autre de @)
Chanoine Posté(e) le 14 avril 2011 Auteur Posté(e) le 14 avril 2011 Ouah, ça marche! En effet, il fallait mettre _-text au lieu de _text! Des heures de bidouillage pour rien!Merci à REBCAO et Bryce pour leur Aide!!! :D
rebcao Posté(e) le 14 avril 2011 Posté(e) le 14 avril 2011 Ah ben on va y arriver... Chris... ;) Formateur, Consultant Expert AutoCAD, REVIT MEP, INVENTOR, télécharger , des Outils AutoCAD...cad123 @ wanadoo.fr (enlever les espaces de part et d'autre de @)
Chanoine Posté(e) le 15 avril 2011 Auteur Posté(e) le 15 avril 2011 Bonjour,encore plus dur! J'ai cette macro:_point 0,123 _-text _j _mc 0,128 4 0 1 je souhaite qu'elle enchaîne directement avec celle-ci:_point 0,-14.4 _-text _j _mc -2.75,-14.4 4 90 81.23 puis celle là:_point 0,-65.3 _-text _j _mc -2.75,-65.3 4 90 0 et enfin celle là:_pline 0,0 0,-110.8 Je les ai donc mises l'une à la suite de l'autre.Le problème, c'est qu'une fois que la première s'est exécutée, je me retrouve avec mon premier point suivi du chiffre 1 (normal quoi) puis du texte des autres macros enchaînées.J'ai essayé de mettre fin à la commande texte par ; et ^M qui génèrent la touche entrée, mais ça ne marche pas et ça me les écrit derrière le 1.Ce qui m'étonne, c'est que copiées collées dans AutoCAD les unes derrière les autres elles marchent très bien. Je me demande s'il n'y a pas un probème de temporisation: si leur exécution est trop rapide la commande texte ne semble pas avoir le temps de se stopper.Comment mettre fin à la commande texte? J'ai essayé TEXTEVAL à 1, mais rien n'y fait. Dois-je passer par du DIESEL (qui fonctionne sous LT je crois)? J'ai bien vu la commande 'DELAI mais c'est dans les scripts. Je ne suis pas sur de pouvoir la placer dans une macro.Merci à tous, ;) [Edité le 15/4/2011 par Chanoine]
bryce Posté(e) le 17 avril 2011 Posté(e) le 17 avril 2011 Bonjour, Normalement ça fonctionne avec le point-virgule.Je viens de tester la macro suivante (sur AutoCAD 2011), et aucun problème : ^C^C_point;0,123;_-text;_j;_mc;0,128;4;0;1;_point;0,-14.4;_-text;_j;_mc;-2.75,-14.4;4;90;81.23;_pline 0,0 0,-110.8;; Elle ne fonctionne pas chez toi ? Brice, formateur AutoCAD - Inventor - SolidWorks - ZWCad - DraftSight - SketchUp indépendant
Chanoine Posté(e) le 17 avril 2011 Auteur Posté(e) le 17 avril 2011 Bonjour,j'ai emprunté le portable du boulot sous LT2009 et ça ne fonctionne pas.Ca m'écrit: Commande: ^C^C_point;0,123;_-text;_j;_mc;0,128;4;0;1;_point;0,-14.4;_-text;_j;_mc;-2.75,-14.4;4;90;81.23;_pline Commande inconnue "^C^C_POINT;0,123;_-TEXT;_J;_MC;0,128;4;0;1;_POINT;0,-14.4;_-TEXT;_J;_MC;-2.75,-14.4;4;90;81.23;_PLINE". Appuyez sur F1 pour obtenir de l'aide.Commande: 0,0 Commande inconnue "0,0". Appuyez sur F1 pour obtenir de l'aide. N'y aurait-il pas une variable à modifier pour prendre en compte le point virgule?Car le point virgule n'est pas pris comme équivalent de la touche entrée...
bryce Posté(e) le 17 avril 2011 Posté(e) le 17 avril 2011 Une macro, ça ne se s'utilise pas directement dans la ligne de commande ! :casstet: Il faut créer une commande personnalisée (un bouton) dans la boîte de dialogue Personnaliser (commande CUI), puis utiiser ce bouton dans une barre d'outils, dans le Ruban, ou dans une palette d'outils. ;) Brice, formateur AutoCAD - Inventor - SolidWorks - ZWCad - DraftSight - SketchUp indépendant
Chanoine Posté(e) le 18 avril 2011 Auteur Posté(e) le 18 avril 2011 Ah? Pourtant, quand j'essaye mes macros avec espace, ça fonctionne nickel (et pour cause, maintenant que je viens de comprendre!)...Bon, ben je vais me créer un bouton.Mon but était à la base de créer une macro sous excel (ce qui fonctionne très bien, sauf que je ne peux pas enchainer une autre commande après _-text) et de la coller ensuite dans la ligne de commande. Avec une seule commande, ça marche super, et si je les colle les unes après les autres ça marche encore très bien. C'est si je les mets à la suite que ça marche pas.Par exemple, je colle dans la ligne de commande:_point 0,123 _-text _j _mc 0,128 4 0 1 ça me crée un point avec le chiffre 1 écrit à côté. Ensuite je colle:_point 0,-14.4 _-text _j _mc -2.75,-14.4 4 90 81.23 ça me crée un point avec le chiffre 81.23 tourné à 90° etc. Mais si je fais un copié collé des deux enchainés, avec les espaces là où il faut, ça me crée le premier point mais avec écrit à côté le chiffre 1 suivi du texte de l'autre macro.Si je comprends bien, il faut que je remplace les espaces par des points virgules et que je crée obligatoirement un bouton sous autocad, qui va récupérer la séquence de macros sous excel, ce que je ne voulais pas faire à la base.Mais visiblement je n'ai pas le choix.Merci pour l'info! ;)
bryce Posté(e) le 18 avril 2011 Posté(e) le 18 avril 2011 Bonjour, Si tu veux pouvoir coller les commandes directement dans la ligne de commande, il faut que ton fichier Excel génère un script (et en respecte la syntaxe), et non une macro. Dans un script, on ne peut pas utiliser le ; ou ^M pour la simuler la touche Entrée.L'espace oui, mais évidemment quand on utilise l'espace au sein d'une commande Texte, ça crée un espace dans le texte, ça ne valide pas la commande. Il faudrait donc dans ton fichier Excel concaténer tes commandes avec un saut de ligne ( CAR(10) ) à chaque fois que c'est nécessaire. Tu peux voir un exemple sur cette vidéo que j'avais faite pour une utilisation proche de ce que tu veux faire : Brice, formateur AutoCAD - Inventor - SolidWorks - ZWCad - DraftSight - SketchUp indépendant
Chanoine Posté(e) le 18 avril 2011 Auteur Posté(e) le 18 avril 2011 Waouh!!!Ca marche nickel, je trace mon profil en long en moins de 3 secondes!!!Un grand merci à Bryce et Rebcao!!! :D :D :D
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