Macro en quittant un onglet
Résolu/Fermé
fadmaam
Messages postés
34
Date d'inscription
mardi 5 mai 2015
Statut
Membre
Dernière intervention
3 novembre 2015
-
27 oct. 2015 à 15:15
fadmaam Messages postés 34 Date d'inscription mardi 5 mai 2015 Statut Membre Dernière intervention 3 novembre 2015 - 27 oct. 2015 à 17:06
fadmaam Messages postés 34 Date d'inscription mardi 5 mai 2015 Statut Membre Dernière intervention 3 novembre 2015 - 27 oct. 2015 à 17:06
A voir également:
- Macro en quittant un onglet
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Rouvrir un onglet fermé - Guide
- Macro word - Guide
- Jitbit macro recorder - Télécharger - Confidentialité
- Onglet (informatique) - Guide
2 réponses
Kuartz
Messages postés
852
Date d'inscription
vendredi 13 février 2015
Statut
Membre
Dernière intervention
15 février 2019
61
27 oct. 2015 à 15:33
27 oct. 2015 à 15:33
Bonjour,
Le code avec Deactivate devrait marcher mais effectivement, il faut alors préciser dans quel onglet on l'exécute. Donc je procéderais comme cela :
Cordialement.
Le code avec Deactivate devrait marcher mais effectivement, il faut alors préciser dans quel onglet on l'exécute. Donc je procéderais comme cela :
Private Sub Worksheet_Deactivate() Dim Valeur As String 'Valeur = Target : il va falloir changer cette donnée car en quittant l'onglet, il est évident que la 'target' ne sera pas la bonne cellule. 'pour pallier à ce problème, je vous propose ce code : Valeur = InputBox("Tapez le nom de la valeur à rechercher :") If InputBox = "" Then MsgBox("Aucune saisie.") Exit Sub End If Sheets("le nom de votre feuille").Range("A2:AZ500").Select Selection.Sort Key1:=Sheets("le nom de votre feuille").Range("A2"), Order1:=xlAscending, Key2:=Sheets(le nom de votre feuille").Range("C2") _ , Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase:= _ False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal, DataOption2 _ :=xlSortNormal Set c = Sheets("le nom de votre feuille").Columns("A:AZ").Find(Valeur, LookIn:=xlValues) Sheets("le nom de votre feuille").c.Select End Sub
Cordialement.
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 312
Modifié par michel_m le 27/10/2015 à 16:34
Modifié par michel_m le 27/10/2015 à 16:34
Bonjour
SUPPRIME SUITE A ATTITUDE DEDAIGNEUSE DE FADMANN
Michel
SUPPRIME SUITE A ATTITUDE DEDAIGNEUSE DE FADMANN
Michel
fadmaam
Messages postés
34
Date d'inscription
mardi 5 mai 2015
Statut
Membre
Dernière intervention
3 novembre 2015
27 oct. 2015 à 17:00
27 oct. 2015 à 17:00
???
27 oct. 2015 à 16:09
Merci pour votre réponse.
J'ai corrigé le code et voici ce que ça donne :
J'ai enlevé le reste car en fait ça ne sert plus à grand chose si on quitte l'onglet...
Par contre, j'ai un message d'erreur :"Select method of Range clas failed".
Désolé, je ne suis vraiment pas doué :-(
FadY
27 oct. 2015 à 16:33
Blacklist
27 oct. 2015 à 17:06
Je suis navré mais il n'y avait rien d'autre sur mon écran que la réponse de Kuartz lorsque j'ai répondu tout à l'heure. J'étais occupé à essayer sa solution et n'ai sans doute pas rafraichi la page avant de répondre.
FadY
Modifié par Kuartz le 27/10/2015 à 16:55
J'espère que vous n'êtes pas en colère contre moi...
fadmaam, vous auriez dû prêter attention à la réponse de michel_m.
Ce qui plante sur le code, c'est la ligne :
Et pour cause, vous sélectionnez des cellules d'une feuille où vous n'êtes pas.
Le code modifié et fonctionnel :
Cordialement.
27 oct. 2015 à 17:02
Ca fonctionne nickel ;-)
Cordialement,
FadY