Bouton qui appelle une macro VBA

Fermé
Shadow - 24 juil. 2009 à 09:28
jjsteing Messages postés 1669 Date d'inscription vendredi 11 mai 2007 Statut Contributeur Dernière intervention 21 mai 2012 - 24 juil. 2009 à 12:04
Bonjour,
Depuis maintenant une semaine je me suis lancé dans la programmation d'une macro excel.
Je viens de terminer cette macro et j'ai crée le bouton qui permet de l'appeller, mon problème étant que j'ai toutes les "appels" possible et j'ai toutjours un message d'erreur qui s'affiche ...

Private Sub BoutonAppel_Click()

Ma macro s'appellant Macro1.

End Sub


Si vous pouvez m'aider SVP :)
A voir également:

19 réponses

jjsteing Messages postés 1669 Date d'inscription vendredi 11 mai 2007 Statut Contributeur Dernière intervention 21 mai 2012 181
24 juil. 2009 à 09:32
Private Sub BoutonAppel_Click()

Macro1

End Sub
0
Sa m'affiche une rreur de compilation :(
0
LeDénicheur Messages postés 565 Date d'inscription samedi 5 janvier 2008 Statut Membre Dernière intervention 1 décembre 2013 358
24 juil. 2009 à 09:38
Pour créer un bouton appelant une macro :
Deux solutions :
Première solution :
Selectionne la feuille.
Affichage => Barre d'outils => Visual Basic
Active le mode création et la boîte d'outils de contrôles.
Clique ensuite sur bouton de commande, dessine le bouton sur ta feuille.
Pour écrire un texte => Clique droit dessus , Objet de Commande => Edition
Ensuite, toujours en mode création, double clique sur ton bouton , VBA s'ouvre avec marqué "CommandButton1_Click() ...end Sub"
Laisse les écris, et écris entre les deux : Applicaticon.Run " ' Nomdufichier '!macro1"
ça ferait donc :

Private Sub CommandButton1_Click()
Application.Run " 'Classeur1.xls'!macro1"
End Sub

Fais bien attention aux apostrophes et guillemets

Deuxième solution(plus simple je pense) :
En bas de ta fenetre excel tu as des un bouton "Formes Automatiques" logiquement
Si tu ne l'a pas : Affichage=> Barre d'outils => Dessin
Selectionne la forme de ton choix, dessine la sur ta feuille, puis Clique droit dessus => "Affecter une macro", selectionne ta macro.
(Ces boutons sont plus hestétiques mais moins bien programmable, mais je pense que pour un débutant c'est niquel)

SI tu as des questions hésite pas =)
0
jjsteing Messages postés 1669 Date d'inscription vendredi 11 mai 2007 Statut Contributeur Dernière intervention 21 mai 2012 181
24 juil. 2009 à 09:40
je suis sur que ca marche.. tu sais bien que je teste un ptit peu avant quand meme.. et si c'est de mémoire, je le précise ;):p
0
jjsteing Messages postés 1669 Date d'inscription vendredi 11 mai 2007 Statut Contributeur Dernière intervention 21 mai 2012 181
24 juil. 2009 à 09:38
quel est l erreur exact?? N° + texte
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
"Utilisation incorrecte de la propriété"
0
LeDénicheur Messages postés 565 Date d'inscription samedi 5 janvier 2008 Statut Membre Dernière intervention 1 décembre 2013 358
24 juil. 2009 à 09:41
Essaye ça je te dis :

Private Sub BoutonAppel_Click()
Application.Run " 'Classeur1.xls'!macro1"
End Sub

0
jjsteing Messages postés 1669 Date d'inscription vendredi 11 mai 2007 Statut Contributeur Dernière intervention 21 mai 2012 181
24 juil. 2009 à 09:43
sur quelle ligne il s arrete?? sinon, fait comme a dit le denicheur .. avec l assistant, c'est sur que ca buggera pas :p ou alors c'est que ton xl est bugger :p
0
Excel me dit qie le classeur1.xls est introuvable ...
0
jjsteing Messages postés 1669 Date d'inscription vendredi 11 mai 2007 Statut Contributeur Dernière intervention 21 mai 2012 181
24 juil. 2009 à 09:47
donc c'est dans ta macro que ca merdouille !!
0
LeDénicheur Messages postés 565 Date d'inscription samedi 5 janvier 2008 Statut Membre Dernière intervention 1 décembre 2013 358
24 juil. 2009 à 09:47
"Classeur1" tu le remplace par ton nom de fichier excel =) genre
0
LeDénicheur Messages postés 565 Date d'inscription samedi 5 janvier 2008 Statut Membre Dernière intervention 1 décembre 2013 358
24 juil. 2009 à 09:48
lol deux secondes d'écart ! Flood touche F5 Jjsteing ou bien ? XD
0
jjsteing Messages postés 1669 Date d'inscription vendredi 11 mai 2007 Statut Contributeur Dernière intervention 21 mai 2012 181
24 juil. 2009 à 09:53
non, juste 3 onglet.. des réponse en pagaille et donc mes intervention qui sont souvent à jour ;).. c week end ici :D
0
LeDénicheur Messages postés 565 Date d'inscription samedi 5 janvier 2008 Statut Membre Dernière intervention 1 décembre 2013 358
24 juil. 2009 à 09:55
C'est vrai que c'est sympas d'aider les gens comme ça =), ça occupe, ça rend service; et limite des fois c'est un jeu ! hihi
Sinon....Shadow, elle marche la commande ou pas ?si tu veux donne moi le nom exacte de ton fichier, et j'te tape la macro exact
0
Ma macro ne marhce toujours pas , étant débutant, je me demande si je l'ai bien enregistrer, car enfait ce que j'appelle Macro1 est à la base un UserForm ... donc?
0
jjsteing Messages postés 1669 Date d'inscription vendredi 11 mai 2007 Statut Contributeur Dernière intervention 21 mai 2012 181
24 juil. 2009 à 11:23
ah ben ca change tout !!!

macro1.show alors ;)

mais gaffe.. je te conseil de la renommée form ou autre chose que macro.. car macro, en vba, c'est quelque chose de précis, d où notre confusion..

ps si tu renome ton userform de macro1 à MaFeuille par ex => Mafeuille.show ;)
0
LeDénicheur Messages postés 565 Date d'inscription samedi 5 janvier 2008 Statut Membre Dernière intervention 1 décembre 2013 358
24 juil. 2009 à 11:29
Comme qui dirait : "Ah mais lol !!!"
Tout s'explique ! Zut Jjsteing m'a pris de vitesse =)
+1 => Mafeuille.Show
Si tu as d'autres questions...
0
Pad d'autre questions :) mais un grand merci car c'était mon dernier jour de stage et je voulais terminer sa avant de partir, et grace a vous c'est bon :) !
0
LeDénicheur Messages postés 565 Date d'inscription samedi 5 janvier 2008 Statut Membre Dernière intervention 1 décembre 2013 358
24 juil. 2009 à 11:45
Tout marche niquel chrome comme qui dirait ?
0
jjsteing Messages postés 1669 Date d'inscription vendredi 11 mai 2007 Statut Contributeur Dernière intervention 21 mai 2012 181
24 juil. 2009 à 12:04
ok, post en résolu alors ;)
0