Différencier boutons

Bonjour, est-il possible de différencier les boutons macro que crée sur la feuille Excel. En fait j'ai regroupé mon code et réalisé une boucle mais pour savoir le parcours de la boucle il faudra savoir si l'utilisateur à cliqué sur le bouton 1 ou le bouton 2.

Merci.

Bonjour,

Peux-tu être plus précis et illustrer s'il y a lieu... ?

Type de boutons ?

MFerrand a écrit :

Bonjour,

Peux-tu être plus précis et illustrer s'il y a lieu... ?

Type de boutons ?

En fait j'ai assigné une macro sur une forme qui se trouve dans l'onglet "insertion - forme".

Mon problème c'est pour éviter d'avoir plusieurs modules dans mon code, j'ai tout regroupé dans le même module et par conséquent, mes 2 boutons (donc mes deux formes) on la même macro.

Seulement quand on clique sur la première forme, le code me renvoi la valeur de ce jour et la deuxième macro me renvoi la valeur de hier. C'est donc là que je bloque puisque pour le moment rien ne différencie les deux boutons.

Merci

Si tu affectes la même macro à tes deux boutons (formes) tu peux détecter le bouton appelant par :

Application.Caller

qui renvoie le nom du bouton...

Conseil : renommer tes formes, pour un résultat plus structuré...

Cordialement.

Merci à toi, cependant, je ne connais pas du tout l'application Application.Caller, comment je dois l'utiliser ?

C'est possible de renommer les formes à partir d'Excel ? Dans mes formes j'ai du texte mais je ne sais pas si c'est le nom de la forme ?

Merci

Alors :

1) Tu sélectionnes la forme : son nom apparaît dans la zone Nom (à gauche de la barre de formule).

2) Tu sélectionnes le nom dans cette zone Nom, tu en tapes un (plus convivial) qui te convient, tu valides par Entrée.

3) Il est prudent de vérifier que le nouveau nom a bien été pris en compte en resélectionnant la forme...

En début de ta macro :

Dim fm$
fm = Application.Caller
...

ou bien :

If Application.Caller = "xxx" Then
...

ou encore, si par exemple tu termines tes noms avec un numéro d'ordre :

Dim nf%
nf = CInt(Right(Application.Caller, 1))
Select Case nf
    Case 1
        ...
    Case 2
        ...
    Case 3
        ...
End Select
...

Cordialement.

MFerrand a écrit :

Alors :

1) Tu sélectionnes la forme : son nom apparaît dans la zone Nom (à gauche de la barre de formule).

2) Tu sélectionnes le nom dans cette zone Nom, tu en tapes un (plus convivial) qui te convient, tu valides par Entrée.

3) Il est prudent de vérifier que le nouveau nom a bien été pris en compte en resélectionnant la forme...

En début de ta macro :

Dim fm$
fm = Application.Caller
...

ou bien :

If Application.Caller = "xxx" Then
...

ou encore, si par exemple tu termines tes noms avec un numéro d'ordre :

Dim nf%
nf = CInt(Right(Application.Caller, 1))
Select Case nf
    Case 1
        ...
    Case 2
        ...
    Case 3
        ...
End Select
...

Cordialement.

Merci beaucoup, je ne connaissais pas cette formule et elle est vraiment pratique.

Encore merci.

Rechercher des sujets similaires à "differencier boutons"