XL 2010 Macro sur date

sophang

XLDnaute Nouveau
Bonjour au forum,

Je dois copier au quotidien dans le fichier « BASE » les données du Pays US dans le fichier « US ».

Je ne dois copier uniquement la dernière date par rapport à la date du jour, soit le 16/11/2016 dans le fichier « US ».

La macro suivante permet d’effectuer cette tâche.

Windows("BASE.xlsx").Activate
Range("A1").Select
Selection.AutoFilter
ActiveSheet.Range("$A$1:$C$13").AutoFilter Field:=1, Operator:= _
xlFilterValues, Criteria2:=Array(2, "11/16/2016")
ActiveSheet.Range("$A$1:$C$13").AutoFilter Field:=2, Criteria1:="US"
Range("A12:C12").Select
Selection.Copy
Windows("BASE.xlsx").Activate
Range("A12:C12").Select
Application.CutCopyMode = False
Selection.Copy
Windows("US.xlsx").Activate
Range("A2").Select
ActiveSheet.Paste
Windows("BASE.xlsx").Activate
Windows("FICHIER MACROS.xlsm").Activate
Range("D15").Select
End Sub


Cependant, je rencontre un souci. Comme la BASE est alimentée au quotidien par des données, la macro ne filtre que la date du 16/11/2016. Comment modifier ce code avec la date de J-1 ?
xlFilterValues, Criteria2:=Array(2, "11/16/2016")

En espérant avoir été clair dans mes explications.
 

Pièces jointes

  • FICHIER MACROS.xlsm
    17.4 KB · Affichages: 31
  • BASE.xlsx
    10 KB · Affichages: 38
  • US.xlsx
    8.8 KB · Affichages: 36

jecherche

XLDnaute Occasionnel
Bonjour,

Au lieu de :
Code:
ActiveSheet.Range("$A$1:$C$13").AutoFilter Field:=1, Operator:= _
xlFilterValues, Criteria2:=Array(2, "11/16/2016")

essaie :
Code:
    ActiveSheet.Range("$A$1:$C$13").AutoFilter Field:=1, Operator:= _
        xlFilterValues, Criteria2:=Array(2, Date)



Jecherche
 

Discussions similaires

Statistiques des forums

Discussions
312 211
Messages
2 086 291
Membres
103 171
dernier inscrit
clemm