Créer une liste selon critère date d'une autre feuille

4alerte-retour.xlsx (10.66 Ko)

Bonjour à vous,

Je sollicite votre aide...

Je souhaite créer une liste de numéro de dossier qui arriveront à échéance dans les prochains 45 jours

Donc chaque matin , en ouvrant fichier, la liste m'affiche les échéances des prochains 45 jours.

Sur ma feuille Data, en A plusieurs date d'échéance et en B le numéro de dossier
Sur ma page rapport en A toute les dates qui ont un retour associé et en B le numéro de dossier joint à la date de retour

Merci

Bonjour,

Private Sub worksheet_activate()
    Sheets("Data").Range("A1").CurrentRegion.AdvancedFilter Action:=xlFilterCopy, _
        CriteriaRange:=Range("A1:A2"), CopyToRange:=Range("A4:B4"), Unique:=False
    Range("A4").CurrentRegion.Select
    ActiveWorkbook.Worksheets("Rapport").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("Rapport").Sort.SortFields.Add Key:=Range("A4"), _
        SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
        xlSortTextAsNumbers
    With ActiveWorkbook.Worksheets("Rapport").Sort
        .SetRange Range("A5:B" & Range("B" & Rows.Count).End(xlUp).Row)
        .Header = xlNo
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
End Sub
4alerte-retour.xlsm (18.20 Ko)

Bonjour Steelson,

Un grand merci pour ton aide, ça fonctionne vraiment bien, mais j'ai du mal à l'appliquer à mon fichier...
J'ai créer un fichier exemple pour illustrer mon problème, mais, je dois intégrer le résultat dans mon fichier réel qui est plus complexe et les champs ne sont pas collé comme sur le fichier exemple.

Je croyais recevoir qu'une formule, mais ta solution me plais, je vais te donner plus concrètement les bon champs et leur emplacements.... espérant que ça ne changera pas trop le code...

Les informations (data) se trouve dans la feuille "ÉVÉNEMENTS"

Dans la colonne F: l'entête est DATE RETOUR PRÉVU situé en F1 et en F2:F1000 les dates sont inscrites
Dans la colonne A: l'entête est No.DOSSIER situé en A1 et en A2:A1000 les numéros de dossiers y sont inscrit

Les informations sont calculé et apparaitront dans la feuille "ÉCHÉANCE"

En A4 commence la liste avec les dates et en B4 les numéro de dossiers....

Question: est-il possibles de placer les cellules qui contienne les informations ' ="<="&B2 ' et ' =AUJOURDHUI()+45 ' dans une nouvelle feuille que je pourrais masquer ou simplement le mettre dans le code ?

J'ai refait le fichier exemple pour travailler avec les champs au bon endroit, ça permettra une meilleur adaptation à mon fichier de travail...

p.j. Alerte_retour v2

Encore une fois, merci pour ton aide précieuse

cela ne sert à rien d efaire un tableau de 5000 lignes ! pourquoi ? quand tu ajoutes une nouvelles ligne, le tableau s'agrandit tout seul, les formules et les formats sont alors automatiquement héritées

la règle en MFC est redondante avc le format du tableau et ne sert à rien , elle trouble quand à la taille du tableau ... tu parles aussi parfois de 1000 alors que le tableau faisait 5000

la macro s'appuie sur un filtre avancé, pour cela il faut que les en-têtes de la feuille ÉCHÉANCE trouvent leur pendant dans la feuille ÉVÉNEMENTS ... et ce n'est pas le cas pour 3 d'entre elles

  1. date de retour ... ou ... date de retour prévu
  2. fabriquant ... ou ... fabricant ?
  3. description ???? pas trouvé dans le tableau de base

Question: est-il possibles de placer les cellules qui contienne les informations ' ="<="&B2 ' et ' =AUJOURDHUI()+45 ' dans une nouvelle feuille que je pourrais masquer ou simplement le mettre dans le code ?

non le filtre avancé ne fonctionnerait pas, mais tu peux les masquer dans 2 colonnes ou 2 lignes

Merci, j'ai peut être fais mon fichier test trop vite
je re-tente mes essais

merci encore pour ton aide

Rechercher des sujets similaires à "creer liste critere date feuille"