VBA : Execution conditionnelle d'1 macro en fonction d'une cellule Exce

cs_sabrina75 Messages postés 7 Date d'inscription samedi 29 novembre 2003 Statut Membre Dernière intervention 12 avril 2004 - 29 nov. 2003 à 21:37
nawnaw85 Messages postés 1 Date d'inscription vendredi 27 juillet 2007 Statut Membre Dernière intervention 27 juillet 2007 - 27 juil. 2007 à 11:20
Bonsoir à toutes et à tous,
Voilà mon pb :

Je travaille sous Excel 2000 et je souhaite via VBA faire executer une macro ou une autre en fonction d'un paramètre sur une feuille Excel.

Plus précisément, si ma cellule en question sur excel est > 1 je veux qu'il fasse ma macro 1 sinon ma macro 2.

Merci d'avance pour votre réponse.
Gros bisous !!!

Sabrina

Trankilllll

6 réponses

cs_EBArtSoft Messages postés 4525 Date d'inscription dimanche 29 septembre 2002 Statut Modérateur Dernière intervention 22 avril 2019 9
29 nov. 2003 à 22:03
Bonsoir,

il suffit de tapez dans la cellule suivante (ou destination)

= IIf(A1>1;MaMacro1;MaMacro2)

Dans cet exemple A1 est le nom de la cellule a tester
MaMacro1 et deux sont les nom des macros a executer

@+

E.B.
cs_EBArtSoft Messages postés 4525 Date d'inscription dimanche 29 septembre 2002 Statut Modérateur Dernière intervention 22 avril 2019 9
29 nov. 2003 à 22:13
sinon tu peut ecrire dans un module

Sub Mafonction
'Teste la valeur
If Sheet1.Cell(A1).value >1 then
'execute la macro1
MaMacro1
'sinon
else
'execute la macro deux
MaMacro2
endif
end sub

@+

E.B.
cs_sabrina75 Messages postés 7 Date d'inscription samedi 29 novembre 2003 Statut Membre Dernière intervention 12 avril 2004
29 nov. 2003 à 23:08
OK merci j'essaie lundi, par contre dans le cas où j'ai plusieurs contraites, je me cale sur ton texte en ajoutant autant de else et if que nécessaire c'est ça???

Merci pour ton aide je ne savais qu'on puvais directement dans une cellule lui dire d'executer une macro (sur ta première réponse)

Trankilllll
cs_EBArtSoft Messages postés 4525 Date d'inscription dimanche 29 septembre 2002 Statut Modérateur Dernière intervention 22 avril 2019 9
29 nov. 2003 à 23:26
Et bien tu a deux possibilités :

If Valeur > x then

Elseif Valeur > y then

Elseif Valeur > z then

else

endif

sachant que z>y>x !

sinon tu peut faire :

select case Valeur (dans ton cas Sheet1.Cell(A1).value)
case x
'Ici le code
case y
'Ici le code
case z
'Ici le code
calse else
'Ici le code
end select

dans ce cas x y et z non pas de relation

@+

E.B.

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

Posez votre question
cs_sabrina75 Messages postés 7 Date d'inscription samedi 29 novembre 2003 Statut Membre Dernière intervention 12 avril 2004
30 nov. 2003 à 00:07
Merci bcp.
Bonne soirée
Trankilllll :big)
nawnaw85 Messages postés 1 Date d'inscription vendredi 27 juillet 2007 Statut Membre Dernière intervention 27 juillet 2007
27 juil. 2007 à 11:20
je veux inserer dans une feuille qui contient des info sur les mamans l'age du plus petit enfant.pour cela je fais recherche par code mais je sais pas comment faire pr que j'ai le min des ages de chaque mere.(les enfants d'une meme mere ont meme code que celleci
Rejoignez-nous