Filtre chronologique
Résolu
megatronnbjja
Messages postés
63
Date d'inscription
Statut
Membre
Dernière intervention
-
megatronnbjja Messages postés 63 Date d'inscription Statut Membre Dernière intervention -
megatronnbjja Messages postés 63 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
j'ai deux feuilles dans mon classeur.
Dans la première, j'ai la macro suivante qui me permet d'effectuer un filtre dynamique selon les valeurs renseignées en ligne 9.
Dans la deuxième, j'ai une cellule qui me permet de calculer une date : aujourdhui()-200
Lorsqu'un utilisateur tape un mot en ligne 9, je veux que mon filtre dynamique se lance (ça c'est OK, on l'utilise depuis plusieurs mois sans soucis) et que en plus de cela, en colonne G un filtre chronologique s'opère avec comme critère dates supérieures à : aujourdhui()-200 jours.
Mon problème: le filtre dynamique fonctionne mais le filtre chrono me masque toutes les lignes.
A savoir que quand je rentre dans le menu déroulant de mon filtre," filtre chrono" est bien sélectionné, "après" est bien coché, la date renseignée dans le champ est la bonne. Lorsque je clique sur ok,le filtre se met en place et m'affiche les lignes désirées. C'est un peu bizare...
Merci d'avance pour votre aide.
Megatron
j'ai deux feuilles dans mon classeur.
Dans la première, j'ai la macro suivante qui me permet d'effectuer un filtre dynamique selon les valeurs renseignées en ligne 9.
Dans la deuxième, j'ai une cellule qui me permet de calculer une date : aujourdhui()-200
Lorsqu'un utilisateur tape un mot en ligne 9, je veux que mon filtre dynamique se lance (ça c'est OK, on l'utilise depuis plusieurs mois sans soucis) et que en plus de cela, en colonne G un filtre chronologique s'opère avec comme critère dates supérieures à : aujourdhui()-200 jours.
Mon problème: le filtre dynamique fonctionne mais le filtre chrono me masque toutes les lignes.
Private Sub Worksheet_Change(ByVal Target As Range) Dim dercol As Integer, i As Long, derlig As Long Dim date1 As Variant dercol = Cells(10, Cells.Columns.Count).End(xlToLeft).Column 'défini la dernière colonne remplie en ligne 10 derlig = Range("A" & Rows.Count).End(xlUp).Row 'défini la dernière ligne remplie en colonne A If Not Intersect(Target, Range("A9", Cells(9, dercol))) Is Nothing Then 'Condition : si modification d'une cellule en ligne 9 For i = 1 To dercol Select Case Target.Address Case Cells(9, i).Address If Target = "" Then 'si la cellule est vidée Range("A10", Cells(derlig, dercol)).AutoFilter Field:=i 'critère de filtre: "" Range("A10", Cells(derlig, dercol)).AutoFilter Field:=7 Else Range("A10", Cells(derlig, dercol)).AutoFilter Field:=i, Criteria1:="*" & Cells(9, i).Value & "*" 'si la cellule contient une valeur alors le critère de filtre est: valeur de la cellule Range("A10", Cells(derlig, dercol)).AutoFilter Field:=7, Criteria1:=">" & Sheets("mise au point des macros").Cells(2, 10) End If End Select Next i End If End Sub
A savoir que quand je rentre dans le menu déroulant de mon filtre," filtre chrono" est bien sélectionné, "après" est bien coché, la date renseignée dans le champ est la bonne. Lorsque je clique sur ok,le filtre se met en place et m'affiche les lignes désirées. C'est un peu bizare...
Merci d'avance pour votre aide.
Megatron
A voir également:
- Excel filtre chronologique n'apparait pas
- Photo filtre 7 gratuit - Télécharger - Retouche d'image
- Liste déroulante excel - Guide
- Clé usb n'apparait pas - Guide
- Word et excel gratuit - Guide
- Fonction filtre excel n'existe pas - Forum Excel