Idéalement, il y aurait une colonne qui a la date dedans. Ensuite, vous pouvez faire un filtre avancé pour filtrer la plage de dates dont vous avez besoin. La sélection des 31 derniers jours ne sélectionnera pas toujours un mois seulement. Il peut également sélectionner jusqu'à 3 jours à partir du mois précédent.
Public Sub selectLastMonth()
Dim ws As Worksheet
Dim dStart As Date, dEnd As Date
Set ws = ActiveSheet
ws.Range("A:B").Sort key1:=ws.Range("A2"), header:=xlYes
dEnd = ws.Range("A1").End(xlDown).Value
dStart = DateSerial(DatePart("yyyy", dEnd), DatePart("m", dEnd), 1)
ws.Range("A:B").AutoFilter field:=1, Criteria1:=">=" & dStart, Operator:=xlAnd, Criteria2:="<=" & dEnd
Set ws = Nothing
End Sub
merci, thats vraiment ce que je dois - je l'ai déjà une colonne avec la date - comment pourrais-je écrire le filtre vba? –
merci Jason - c'est génial –