sainttwo
Messages postés3Date d'inscriptionsamedi 2 décembre 2000StatutMembreDernière intervention11 novembre 2008
-
11 nov. 2008 à 19:58
dedenet2
Messages postés372Date d'inscriptionvendredi 27 juillet 2007StatutMembreDernière intervention22 juillet 2013
-
12 nov. 2008 à 20:37
Bonjour,
Tout d'abord, j'éspère que je n'ai pas placé mon topic dans le mauvais salon (je ne savais pas trop), si c'était le cas, je m'en excuse ...
Dans le cadre de mon travail, j'utilise énormément AutoCAD sur des projets conséquents qui sont constitué de 20 à 100 DWG...
J'aimerais pouvoir piloter AutoCAD depuis un programme VB externe (qui fonctionnerait alors en autonomie totale) ou bien depuis une macro Excel qui récupérerait des informations (des labels, des coordonnées, des couleurs ... saisies dans les feuilles).
Cela me permettrait de créer des boucles (ouvrir un DWG, aller chercher une information dans telle cellule puis l'appliquer dans le fichier autocad, enregistrer, puis ouvrir le fichier suivant etc...).
Je ne sais pas si cela est possible ! je crois que oui mais maintenant, malgré des heures passées à chercher sur le net, je ne trouve pas comment faire la relation VB6 (voire VBnet) - Autocad ou VBA Excel-AutoCAD
Merci de vous intéresser à mon problème ! Si vous aviez une solution, cela me serait d'une grande aide !
Merci !
PS : Je suis preneur si il y a une astuce similaire pour MicroStation !
pile_poil
Messages postés682Date d'inscriptionvendredi 6 avril 2007StatutMembreDernière intervention 4 août 20126 11 nov. 2008 à 21:42
si c'est un autocad LT que tu as tu peux oublier tout de suite ton idée
par contre si tu as un version "normale" depuis autocad 2000 c'est tout a fait possible et simple !
enfin ... simple dans la mesure où tu maitrise le VBA d'autocad
mais probablement pas , sinon tu saurais déja comment faire pour le piloter depuis Excel ou VB6 ..etc
en effet pratiquement dans toutes les pages d'aide du VBA autocad il y a renvoi vers la façon de le piloter par une application externe
un .dwg est un fichier donc il est dans un répertoire
dans VB6 tu as DIR FILECOPY etc pour ces opérations
pour piloter autocad tu as les deux instructions clé : Getobject et Createobject
[reglement.aspx ]si c'est la solution, penser : REPONSE ACCEPTEE
sainttwo
Messages postés3Date d'inscriptionsamedi 2 décembre 2000StatutMembreDernière intervention11 novembre 2008 11 nov. 2008 à 21:54
Merci de ta réponse pole_poil !
j'ai une version normale d'autocad donc ca devrait le faire. J'ai aussi quelques bases de VB6. Il me reste donc à apprendre les méthodes et propriétés d'Acad...Il suffirait donc de me renseigner dans l'aide VBA autocad pour trouver mon bonheur sur la communication avec des aplications tiers ?
pile_poil
Messages postés682Date d'inscriptionvendredi 6 avril 2007StatutMembreDernière intervention 4 août 20126 12 nov. 2008 à 20:15
dedenet2
en effet ceci marche avec toutes les versions de autocad mais n'utilise pas le VBA de celui ci !
pour récupérer la liste des calques tu as vu l'usine à gaz que c'est ?
alors qu'avec le VBA d'autocad (qui n'est pas implémenté dans les vesrions LT) il ne faut qu'une vingtaine de ligne de code.
je te laisse imaginer ce que serait avec le système dont tu parles le dessin d'un objet complexe composé d'une petite centaine de blocs dotés d'attributs par exemple ....
l'exemple que tu cites est donc utilisable avec un autocad LT faute de mieux pour de petites manips mais avec les version "normales" il est de loin préférable de passer par le VBA