GoTo

jijudu Messages postés 211 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 3 septembre 2009 - 28 mai 2008 à 17:22
cs_Megafan Messages postés 389 Date d'inscription dimanche 7 avril 2002 Statut Membre Dernière intervention 23 septembre 2016 - 30 mai 2008 à 14:11
SAlut :)

Voila je sais comment il faut faire un GoTo dans une même macro
exemple :

sub exemple1()
Line1:
'
'code
'

condition
Goto Line1
End sub

Mais le probléme c'est que j'ai essayé le GoTo pour ALler dans une Autre MACRO
et SA ne marche pas ....

Je ne sais pas ce qu'il faut écrire...

J'éspere que c'est possible..

Merci bien ^^
++

11 réponses

JPGVB Messages postés 96 Date d'inscription mardi 29 mars 2005 Statut Membre Dernière intervention 10 mars 2011 2
28 mai 2008 à 17:53
Bonjour, pour executer une macro, tape juste son nom .
0
cs_fauve Messages postés 661 Date d'inscription vendredi 2 décembre 2005 Statut Membre Dernière intervention 23 mars 2011 8
28 mai 2008 à 18:27
Salut,

Pour aller d'une macro à une autre, voici un exemple : (passer de la macro exemple1 à la macro exemple2)

Sub exemple1()
----
----
----
exemple2()
End Sub

Sub exemple2()
----
----
----
End Sub

++
--------------------------
Si la réponse vous convient : Réponse Acceptée
0
cs_Megafan Messages postés 389 Date d'inscription dimanche 7 avril 2002 Statut Membre Dernière intervention 23 septembre 2016 2
28 mai 2008 à 19:03
Salut,
En 2008 il faut un peu oublier les goto...
Avec des fonctions (fuction) ou des procedures(sub), ça le fait beaucoup mieux....
De plus, change le théme du sujet parceque macro ça rime pas trop avec vb.net/2005 .
@+
Megafan
0
cs_fauve Messages postés 661 Date d'inscription vendredi 2 décembre 2005 Statut Membre Dernière intervention 23 mars 2011 8
28 mai 2008 à 20:41
Oui, c'est vrai, tu aurais plutôt du mettre ton code dans la section VBA.

L'utilisation du Goto est peu élégante et à éviter car cela casse la structure du code qui se déroule du haut vers le bas.

++
0

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

Posez votre question
tounecrazyboy Messages postés 6 Date d'inscription jeudi 29 novembre 2007 Statut Membre Dernière intervention 29 mai 2008
29 mai 2008 à 09:34
Yep Slt,

         Je me suis mal expliqué. Ce que je voudrai faire en faite avec le GoTo c'est de passer de la procedure1 à un ENDROIT Spécifique d'une autre procédure.

Exemple:

Sub procedure1()
___
___
___
If _____ then 
   _____
   _____
  GoTo line2
End if
___
___
End sub

Sub procedure2()
___
_____
_____
Line2:
____
____
___
End sub

Lorsque que je compile la procedure1 il ne voit pas Line2.
Est ce qu'il y aurait aprés Goto un code pour dire que la Line2 se trouvé dans la procédure procedure2.
J'espére que c'est possible sinon quelle serait la solution à adopter ??

Merci

++ ^^
0
jijudu Messages postés 211 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 3 septembre 2009
29 mai 2008 à 09:40
Oups désolé tounecrazyboy j'ai prit le pc et j'ai oublié de me déconecter.
+
0
JPGVB Messages postés 96 Date d'inscription mardi 29 mars 2005 Statut Membre Dernière intervention 10 mars 2011 2
29 mai 2008 à 11:12
Bonjour, ton problème vient du fait même que tu utilises GOTO.
Il est bien plus simple de créer une procédure3 qui contient le code que tu as mis après ton goto ligne2, et d'appeler cette procédure de différents endroits selon tes besoin. 

Sub procedure1()
___
___
___
If _____ then 
   _____
   _____
  procedure3()
End if
___
___
End sub

Sub procedure2()
___
_____
_____
procedure3()
____
____
___

End sub

Sub procedure2()
...
end sub
0
jijudu Messages postés 211 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 3 septembre 2009
29 mai 2008 à 13:52
Salut JPGVB,

oulaaa.....
Je ne vois pas comment, aprés avoir fait appel à la procedure3 dans le procédure 1,  j'attérie là où je le souhaite dans la procédure2 ....

C'est le brouillard:/
0
jijudu Messages postés 211 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 3 septembre 2009
30 mai 2008 à 11:10
Voilà, en procédant par procédure,

   dans ma procedure1, je fais appel à la procédure3. Dans cette derniere contient un code; Dans une partie de ce code j'aimerai lui demander d'aller dans la procedure2 à TEL ENdroit et non pas au début de la procédure2 !!
Est ce que c'est possible ?

++ Merci
0
cs_Megafan Messages postés 389 Date d'inscription dimanche 7 avril 2002 Statut Membre Dernière intervention 23 septembre 2016 2
30 mai 2008 à 14:09
Salut,
Je crois quie tu as du mal avec les bases du langage procédural....

Proc1
je fais qqch
je fais qqch
je fais qqch
J'appelle proc2
Proc2 s'est arretée je continue
je fais qqch
je fais qqch
fin proc 1

proc2
je fais qqch
je fais qqch
J'appelle proc3
Proc3 s'est arretée je continue
je fais qqch
je me termine (donc je rend la main a proc1)
fin proc2

proc3
je fais qqch
je me termine (donc je rend la main a proc2)
fin proc3

@+ Megafan
0
cs_Megafan Messages postés 389 Date d'inscription dimanche 7 avril 2002 Statut Membre Dernière intervention 23 septembre 2016 2
30 mai 2008 à 14:11
Oups j'ai oublié , dans proc 3 tu fais le tronc commun d'instruction aux  2 procedures..
@+
Megafan
0
Rejoignez-nous