Un goto dans une autre sub [Résolu]

drnicholas001 37 Messages postés vendredi 10 septembre 2004Date d'inscription 21 avril 2007 Dernière intervention - 19 mai 2005 à 03:50 - Dernière réponse : econs 4066 Messages postés mardi 13 mai 2003Date d'inscription 23 décembre 2008 Dernière intervention
- 19 mai 2005 à 08:58
Salut, je voudrais savoir comment faire un goto dans une autre sub? C'est parce que j'ai un objet et après quelques lignes de code, je veux qu'il active un bouton mais pas faire tout le code qui est présent dans celui-ci, seulement une partie placer après un label. Merci
Afficher la suite 

2 réponses

dp_favresa 132 Messages postés vendredi 23 juillet 2004Date d'inscription 11 mai 2010 Dernière intervention - 19 mai 2005 à 07:48
+3
Utile
Bonjour,



Je vous propose d'utiliser un flag qui définira s'il faut ou non se débrancher

(voir petit exemple ci-dessous) :



Public Dbr As Integer



Sub Macro1()

Dbr = 1

Macro2

End Sub



Sub Macro2()

If Dbr = 1 Then

GoTo Dbr1

End If

ActiveCell.Value = 1

Dbr1:

ActiveCell.Value = 2

End Sub




Bon(nes) courage, développement, salutations...
(choisissez ce qui vous convient) dp
Cette réponse vous a-t-elle aidé ?  
econs 4066 Messages postés mardi 13 mai 2003Date d'inscription 23 décembre 2008 Dernière intervention - 19 mai 2005 à 08:58
0
Utile
Pas bête ...

ou plus simplement découper Macro2 en deux Sub.

Appeler les deux Sub dans Macro2, et n'en appeler qu'une seule dans Macro.

Niveau propreté du code, çà serait quand même mieux.





Sub Macro1()

proc2

End Sub



Sub Macro2()

proc1

End Sub



Sub proc1()

' Avant, tu avais çà :

' If condition Then Goto Etiquette

' Maintenant, tu as ceci :

If condition Then proc2

End Sub



Sub proc2()

' ...

End Sub





Si tu peux éviter les GoTo dans tes procédures, c'est mieux. Il est
préférable de garder ce genre d'instructions pour les
redirections en cas d'erreurs, parce que
pour çà, il n'y a pas d'autre méthode.


Manu
-------------------------------------------
Une question bien posée, c'est une chance de réponse bien adaptée.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.