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

XL 2013 Executer une macro sur une feuille en la quittant

  • Initiateur de la discussion Initiateur de la discussion dna
  • 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 !

dna

XLDnaute Nouveau
Bonjour,

Je n'arrive pas à exécuter cette macro :

Private Sub Worksheet_Deactivate()
Rows("1:1").Select
Selection.AutoFilter
Selection.AutoFilter

ActiveWorkbook.Worksheets("FICHE").AutoFilter.Sort.SortFields.Clear
ActiveWorkbook.Worksheets("FICHE").AutoFilter.Sort.SortFields.Add Key:=Range( _
"E1"), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:= _
xlSortNormal
With ActiveWorkbook.Worksheets("FICHE").AutoFilter.Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub


J'ai cette erreur :

'1004' Err definie par l'application ou par l'objet = le debug s'arrête sur la 1er ligne...

Pouvez-vous m'aider ?
 
Re : Executer une macro sur une feuille en la quittant

Bonjour,

enlève le "select" :
Code:
Private Sub Worksheet_Deactivate()
Selection.AutoFilter

ActiveWorkbook.Worksheets("FICHE").AutoFilter.Sort .SortFields.Clear

bonne journée
@+
 
Re : Executer une macro sur une feuille en la quittant

Si je peux abuser encore...

Cette fois-ci, toujours en quittant l'onglet, j'ai mis cette macro mais je ne peux plus sortir de l'onglet.. aïe

Sheets("Emploi").Select
Cells.Select
Selection.NumberFormat = "@"
Columns("E:G").Select
Selection.NumberFormat = "m/d/yyyy"
Columns("G:G").Select
Selection.Replace What:="", Replacement:=402498, LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False

ActiveWorkbook.Worksheets("Emploi").AutoFilter.Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Emploi").AutoFilter.Sort.SortFields.Add Key:=Range _
("G1:G855"), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:= _
xlSortNormal
With ActiveWorkbook.Worksheets("Emploi").AutoFilter.Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With


Je ne vois pas comment faire sans faire de select.
 
Re : Executer une macro sur une feuille en la quittant

Re,

essaye ceci, non testé...
Code:
With Sheets("Emploi")
    .Cells.NumberFormat = "@"
    .Columns("E:G").NumberFormat = "m/d/yyyy"
    .Columns("G:G").Replace What:="", Replacement:=402498, LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
End With
With ActiveWorkbook.Worksheets("Emploi").AutoFilter.Sort
    .SortFields.Clear
    .SortFields.Add Key:=.Range _
    ("G1:G855"), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:= _
    xlSortNormal
    .Header = xlYes
    .MatchCase = False
    .Orientation = xlTopToBottom
    .SortMethod = xlPinYin
    .Apply
End With
 
- 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

Discussions similaires

  • Question Question
XL 2021 listbox
Réponses
18
Affichages
502
Réponses
17
Affichages
1 K
Réponses
4
Affichages
579
Réponses
11
Affichages
838
Réponses
6
Affichages
1 K
Réponses
1
Affichages
858
Réponses
1
Affichages
2 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…