Filtre à l'ouverture du fichier excel

seb2259 Messages postés 2 Statut Membre -  
 JamesH_007 -
Bonjour,

J'ai un document excel avec 2 colonnes :le nom et la date d'arrivée. Je souhaiterais filtrer les lignes pour qu'à l'ouverture de mon fichier excel, je puisse avoir uniquement les arrivées après la date du jour.
Comment puis-je faire ?

2 réponses

  1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
     
    Bonjour,

    code a mettre dans VBA ThisWorkbook

    Private Sub Workbook_Open()
        With Worksheets("feuil1")
            'dernier cellules non vide colonne A: adaptez a votre colonne
            derlig = .Range("A" & Rows.Count).End(xlUp).Row
            'adaptez  a vos colonnes
            .Range("A1:B" & derlig).AutoFilter
            'adaptez a vos colonnes et le champ (colonne date)
            .Range("$A$1:$B$" & derlig).AutoFilter Field:=2, Operator:= _
                xlFilterValues, Criteria1:=">" & Format(Date, "mm/dd/yyyy")
        End With
    End Sub
    0
  2. JamesH_007
     
    Bonjour.

    Pour répondre à ta question, il faut que tu ajoutes une macro dans le module VBA « ThisWorkbook ». Pour accéder à VBA, il faut que tu fasses ALT+F11. Sache que la macro que tu dois rajouter doit impérativement se nommer « Private Sub Workbook_Open() » pour que ça marche.
    Tu trouveras ci-dessous un exemple :

    Private Sub Workbook_Open()
    Dim MyName As String
    MyName = Format(Now(), "dd/mm/yyyy")
    Sheets("Sheet1").Select 'Selection de l'onglet concerné
    If ActiveSheet.FilterMode Then ActiveSheet.ShowAllData 'Enlever les filtres précédents
    Range("A:AZ").Select
    Selection.AutoFilter Field:=7, Criteria1:="MyName" 'Tu dois mettre à jour les champs Field et Criteria1
    End Sub

    Voilà, simple comme bonjour ? Bonne journée.
    0