Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

retour sur feuille d'origine après macro

  • Initiateur de la discussion Initiateur de la discussion seagull
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

S

seagull

Guest
Bonjour,
J'ai un soucis avec une macro:
j'ai 4 feuilles dans un classeur(1,2,3,4) ; un bouton dans chaque feuille 1,2,4 qui execute la meme macro en feuille 3, comment faire pour revenir sur la feuille d'ou a été lancé la macro.
ainsi, je lance la macro depuis le bouton de la feuille 1, le macro s'execute en feuille 3 et revient en feuille 1.
je lance la macro depuis le bouton de la feuille 2, le macro s'execute en feuille 3 et revient en feuille 2.
je lance la macro depuis le bouton de la feuille 4, le macro s'execute en feuille 3 et revient en feuille 4.
la macro sert a changer des valeurs de cellules dans la feuille 3

merci de votre aide
 
Re : retour sur feuille d'origine après macro

Bonjour,

Je ne pense pas qu'il soit nécessaire d'aller en feuille 3 pour dérouler la macro...

Mets ton code ici, on va voir ce qu'on peut faire...

Bon Dimanche
 
Re : retour sur feuille d'origine après macro

Bonjour seagull, bhbh,

RE seagull,

Bien que je partage totalement l'avis de bhbh (il est rarement indispensable d'activer une feuille pour y apporter des modifications), je suppose que tu désires visualiser les changements apportés sur la feuille 3.

Je joins donc un fichier exemple de ce qu'il est possible de faire dans cette optique.

Espérant avoir aidé.

Cordialement.
 

Pièces jointes

Re : retour sur feuille d'origine après macro

Bonjour,

Voici le code que je vous propose

Sub test()

For Each sh In ActiveWindow.SelectedSheets
x = sh.Name
Next


If x = "Feuil1" Then
Worksheets("Feuil3").Activate
Range("A1") = "Feuil1"
Worksheets("Feuil1").Select
ElseIf x = "Feuil2" Then
Worksheets("Feuil3").Activate
Range("B1") = "Feuil2"
Worksheets("Feuil2").Select
ElseIf x = "Feuil4" Then
Worksheets("Feuil3").Activate
Range("C1") = "Feuil4"
Worksheets("Feuil4").Select
Else

End If
End Sub


je ne sais pas si cela correspond mais peut être que cela si rapproche

Cordialement
 
Re : retour sur feuille d'origine après macro

Bonjour à tous et merci pour vos réponses rapides, mon problème est maintenant résolu!😉
je joins un fichier qui illustre bien ce que je voulais faire (c'est un exemple)ou j'ai appliqué le code de Laurent950 et qui pourra servir à d'éventuels internautes.
merci encore 🙂
 

Pièces jointes

Re : retour sur feuille d'origine après macro

Bonjour,
Je reviens sur le sujet car, même si mon problème est résolu, j'ai été interpellé par la remarque de "bhbh". Effectivement, je n'ai pas besoin de visualiser ce qui se passe dans le déroulement de la macro mais la solution de "laurent950"fonctionne et, comme j'ai peu d'actions dans la macro, ça me va.
toutefois, pour d'autres applications ou l'écran virevolte dans tous les sens je serais intéréssé par la marche à suivre pour modifier une cellule dans un autre onglet sans y aller (par exemple).
merci😉
 
Re : retour sur feuille d'origine après macro

Bonjour,

Comme suggéré, il te suffisait de mettre ton code ici....(mais tout n'est pas perdu, loin de là....😉)

Sache qu'avec les instructions "With...." et "And With", nul besoin de sélectionner quoi que ce soit....

A toi de voir...

Bon courage
 
Re : retour sur feuille d'origine après macro

Bonjour bhbh😱,
ci dessous 2 petites macros (il yen a 6 dans mon classeur) qui s'executent dans la feuille 3 mais qui peuvent être appelées via des boutons en feuilles 1, 2 ou 4. Peux-tu modifier ce code pour faire la modif en feuille 3 sans y aller, donc si je suis en feuille1 (par exemple), j'appele la macrobout2 mais pendant le déroulement de la macro en feuille 3, rien n'est visible à l'écran et je reste en feuille 1. Comme je te le disais, pour cet exemple cela n'est pas indispensable car l'execution est rapide mais j'ai d'autres macros plus complexes ou l'écran vacille un certain temps pendant le déroulement et c'est disgracieux.
merci😉

'les macros macrobout2, 3, 4, 5 et 6 sont appelées depuis feuil1, 2 ou 4
Sub macrobout2()

Sheets("feuill3").Select
Range("A2").Select
ActiveCell.FormulaR1C1 = "=TODAY()"
If Cells(3, 1).Value = 5 Then

ActiveCell.FormulaR1C1 = "=TODAY()-4"
ElseIf Cells(3, 1).Value = 4 Then

ActiveCell.FormulaR1C1 = "=TODAY()-3"
ElseIf Cells(3, 1).Value = 3 Then

ActiveCell.FormulaR1C1 = "=TODAY()-2"
ElseIf Cells(3, 1).Value = 2 Then

ActiveCell.FormulaR1C1 = "=TODAY()-1"
End If

End Sub


Sub macrobout3()

Sheets("feuill3").Select
Range("A2").Select
ActiveCell.FormulaR1C1 = "=TODAY()"
If Cells(3, 1).Value = 5 Then

ActiveCell.FormulaR1C1 = "=TODAY()-3"
ElseIf Cells(3, 1).Value = 4 Then

ActiveCell.FormulaR1C1 = "=TODAY()-2"
ElseIf Cells(3, 1).Value = 3 Then

ActiveCell.FormulaR1C1 = "=TODAY()-1"
ElseIf Cells(3, 1).Value = 1 Then

ActiveCell.FormulaR1C1 = "=TODAY()+1"
End If

End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
43
Affichages
786
Réponses
2
Affichages
240
Réponses
18
Affichages
619
D
  • Question Question
Réponses
5
Affichages
248
Didierpasdoué
D
Réponses
2
Affichages
212
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…