Envoi de bloc Autocad via VBA Excell [Résolu]

Signaler
Messages postés
6
Date d'inscription
lundi 16 avril 2012
Statut
Membre
Dernière intervention
21 mai 2012
-
Messages postés
682
Date d'inscription
vendredi 6 avril 2007
Statut
Membre
Dernière intervention
4 août 2012
-
Bonjour,

Je débute en VBA Excel.

Je crée un programme qui à partir d'une boite de dialogue Excel envoie des photos.PNG et des Bloc.DWG sur Autocad.

Voici le code qui ne fonctionne pas,
pourriez-vous m'aider s'il vous plait ?

[b]Private Sub CmdValidationAutocad_Click()
SendCommand(i "F:\projet\bibliothèqueAutocad\bloc1")
ExportAutoCAD
End Sub/b

En vous remerciant et dans l'attente d'une réponse,
cordialement
Léa

5 réponses

Messages postés
14669
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
15 mai 2020
143
Bonjour,

"Voici le code qui ne fonctionne pas, "
Un message d'erreur ?

Où et comment est déclaré SendCommand ?
Ne manquerait-il pas une virgule entre les 2 arguments ?

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
Messages postés
682
Date d'inscription
vendredi 6 avril 2007
Statut
Membre
Dernière intervention
4 août 2012
6
Je ne suis pas sûr que SendCommand soit vraiment la bonne solution
car c'est une commande du VBA d'autocad pour passer par la ligne de commande de ce même autocad
De plus pour pouvoir te répondre il faudrait déja savoir quelle version d'autocad tu utilises car toutes n'ont pas VBA
Si tu as le VBA d'autocad regardes du coté de la commande InsertBlock
Ensuite tu as deux solutions
1) écrire ton code directement dans excel
2) ecrire ta macro dans autocad et depuis excel faire un RunMacro
Mais dans les deux cas ne pas oublier de mettre dans excel les références à autocad

si c'est la solution, penser : REPONSE ACCEPTEE
Messages postés
6
Date d'inscription
lundi 16 avril 2012
Statut
Membre
Dernière intervention
21 mai 2012

Merci de m'avoir répondu si rapidement, ça fait plaisir de se sentir soutenue.

Effectivement je ne l'avais pas déclaré, chose faite avec Dim SendCommand, mais ça ne fonctionne toujours pas.
J'excplique un peu plus le principe :
grace à une userform je dessine des rectangles issus de différents onglets (Stat,EspV,Trot) les valide puis avec le bouton CmdValidationAutocad_Click(), j'envoie le tout sur Autocad qui dessine.
ça c'est ok.
Maintenant, sur ces rectangles, je souhaite insérer des Blocs.DWG ou des Images.PNG.
j'ai l'intuition que SendCommand est ce qu'il me faut, cependant, je ne sais pas comment l'utiliser, si ça tombe, il existe un autre code plus adapté ... je ne sais pas


[b]Private Sub CmdValidationAutocad_Click()

Dim SendCommand
SendCommand ("i""F:\projet\bibliothèqueAutocad\BlocPlatane")

CmdStatValidation_Click
CmdEspVValidation_Click
CmdTrotValidation_Click

ExportAutoCAD
End Sub/b

Peut-être que ces informations complémentaires seront utiles à la compréhension de mon problème ...
merci,
cordialement,
Léa
Messages postés
14669
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
15 mai 2020
143
Bonjour,

quand tu postes un code, lis le point 2 de ma signature.

Dim SendCommand
SendCommand ("i""F:\projet\bibliothèqueAutocad\BlocPlatane")

Comment ça peut avoir un sens ?

Tu connais les bases du VBA ou pas ?

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
Messages postés
6
Date d'inscription
lundi 16 avril 2012
Statut
Membre
Dernière intervention
21 mai 2012

Re-bonjour,
et non, je débute en VBA, j'ai bien eu quelques heures de cours et j'ai un programme à rendre pour une évaluation, alors je pioche par-ci par-là des extraits que je colle ou modifie. C'est l'enfer car je ne comprends rien, d'où mes appels au secours ...

je prends note du 2ème point pour les écritures des lignes de codes;

Merci d'avoir répondu, maintentnat si tu as une solution à ce pbl... je suis preneuse
Bonne réception,
Léa