Bonjour

J’ai ce code

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
'*** Initialiser 
    Set WsScr = Worksheets("G")
    Set WsDest = Worksheets("Synthèse")
 
     '* Plage des données
    Set Donnees = WsScr.Range("G9:I" & WsScr.[I9].End(xlDown).Row)
 
     '*** Récupérer liste des Date paiement 
    Set ListeDates = WsScr.Range("I8:I" & WsScr.[I9].End(xlDown).Row)
    ListeDates.AdvancedFilter Action:=xlFilterCopy, CopyToRange:=WsDest.Range("I4"), Unique:=True
qui adapté aux besoins fonctionne correctement plusieurs fois dans un classeur a l’exception de ce code

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
Dim WsScr As Worksheet, WsDest As Worksheet
Dim Mvts As Range, cel As Range, Donnees As Range
Dim DerLgn As Long, TotPaye As Double, TotRbt As Double, Nbre As Double
 
'* Initialiser 
    Set WsScr = Worksheets("Mouvts")
    Set WsDest = Worksheets("Synthèse")
    DerLgn = WsScr.[E2].End(xlDown).Row
 
    '*** Récupérer liste des Dépenses 
    Set Mvts = WsScr.Range("E2:E" & DerLgn)
 
     MsgBox Mvts.Address(0, 0)
 
    Mvts.AdvancedFilter Action:=xlFilterCopy, CopyToRange:=WsDest.Range("S4"), Unique:=True

qui me génère l’erreur suivante

Erreur d’exécution 1004
Nom du champ introuvable ou incorrect dans la plage d’extraction
MsgBox Mvts.Address(0, 0) définit bien la plage < E2 :E164 >

Il s’agit d’un tableau < Ligne 2 a 164 sur 8 Colonnes < A a H >

J’ai testé un code donné par Corona adapté a mes besoins qui génère également la même erreur

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
Sub Filtre()
 
 Dim cel As Range
 Set cel = ThisWorkbook.Worksheets("Mouvts").Range("A2").CurrentRegion
 
 MsgBox cel.Address(0, 0)
 
 cel.AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Worksheets("Mouvts").Range("E2:E164"), CopyToRange:=Worksheets("Synthèse").Range("S4"), Unique:=False
End Sub
Après avoir tout vérifié, je suis dans l’impasse
Merci d’avance de votre aide
________________
Cordialement