Invité CityHunter87 Posté(e) le 30 janvier 2011 Posté(e) le 30 janvier 2011 Bonjour à tous, Je souhaite à partir d' un programme en VBA a lancer une commande qui puisse éxecuter un programme LISP. Quelle est la syntaxe en VBA pour lancer une commande autocad ?? J'imagine que ça doit être quelque chose du genre Command (load "C:\blabla\monfichier.lsp") Désolé si la question a déjà été posée mais je ne l'ai pas vu. Je vous remercie !
(gile) Posté(e) le 30 janvier 2011 Posté(e) le 30 janvier 2011 Salut, Regarde la méthode Document.SendCommand() Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
Invité CityHunter87 Posté(e) le 30 janvier 2011 Posté(e) le 30 janvier 2011 Merci de m'avoir mis sur la bonne voie ! :) Parcontre je m'heurte à un nouveau problème : SendCommand attend une chaîne de caractères, voici ce que je tape : ThisDrawing.SendCommand ("(load C:/Users/Julien/Desktop/PROJET-SIG/Prog/lsp/SIG)") Mais la fonction "load" de LISP attend elle aussi une chaîne de caractères, logiquement je devrais écrire ça : ThisDrawing.SendCommand ("(load "C:/Users/Julien/Desktop/PROJET-SIG/Prog/lsp/SIG")") Comment faire pour inclure les guillemets du load ?? Je vous remercie par avance.
Carboleum Posté(e) le 30 janvier 2011 Posté(e) le 30 janvier 2011 ThisDrawing.SendCommand ("(load "C:/Users/Julien/Desktop/PROJET-SIG/Prog/lsp/SIG")") ThisDrawing.SendCommand ("(load \"C:/Users/Julien/Desktop/PROJET-SIG/Prog/lsp/SIG\")") Carboléüm, qui dessine aussi à la main -> Carboleum's sketchblog
(gile) Posté(e) le 30 janvier 2011 Posté(e) le 30 janvier 2011 Salut, Je ne connais pas le VBA, mais il me semble bien qu'avec ce langage pour les guillemets dans une chaîne il faut les doubler.De plus, il faut finir ta chaîne avec une espace ou un retour chariot pour valider la commande. ThisDrawing.SendCommand "(load ""C:/Users/Julien/Desktop/PROJET-SIG/Prog/lsp/SIG"") "ouThisDrawing.SendCommand "(load ""C:/Users/Julien/Desktop/PROJET-SIG/Prog/lsp/SIG"")" & vbCr Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
Invité CityHunter87 Posté(e) le 30 janvier 2011 Posté(e) le 30 janvier 2011 Je viens de tester : ThisDrawing.SendCommand ("(load \"C:/Users/Julien/Desktop/PROJET-SIG/Prog/lsp/SIG\")") Et malheureusement, dés que je mets ces \ j'ai une fenêtre qui s'ouvre en me disant Erreur de Compilation ; Attendu : séparateur de liste ou )
Invité CityHunter87 Posté(e) le 30 janvier 2011 Posté(e) le 30 janvier 2011 Bien joué Gile :) J'ai testé ta première réponse et ça a marché d'entrée :) Merci à vous deux ! Bonne soirée !
(gile) Posté(e) le 30 janvier 2011 Posté(e) le 30 janvier 2011 J'ai testé ta première réponse et ça a marché d'entrée Content pour toi que ça ait marché. La deuxième forme (avec & vbCr) est plus explicite et plus souvent employée je crois. Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
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