Saisie semi-automatique avec filtrage

C60a

XLDnaute Junior
Bonjour à tous,

J'aimerais dans la ligne A2:G2 saisir des mots qui déclenchent successivement un filtrage automatique sur chaque colonne en cours,

Si je saisie en A2, un filtre automatique est appliqué en colonne A selon les lettres saisie en A2.

Si je saisie en B2, un filtre est appliqué sur la colonne B, sur le résultat du premier filtre, selon la valeur saisie en B2.

En C3, un filtre est appliqué sur la colonne C, sur le résultat du deuxième filtre, selon la valeur saisie en C3.

Et ainsi de suite.

A la fin, si tous les valeurs saisies ont 0 enregistrements trouvés (filtrés), alors cette ligne A2:G2 est ajoutée au tableau de données A4:G6.

Merci d’avance,
 

Pièces jointes

  • SaisieFiltrageAuto_v001.xlsm
    27.9 KB · Affichages: 56

C60a

XLDnaute Junior
Bonsoir,

Voila une solution provisoire, ou à chaque fois que le TextBox5 qui servira pour la saisie de la date à le focus, la colonne E sera formatée en date !

VB:
Private Sub TextBox5_GotFocus()
    Columns("E:E").NumberFormat = "dd/mm/yyyy"
    For lig = 5 To [E65000].End(3).Row
        Cells(lig, 5) = CDate(Cells(lig, 5))
    Next
End Sub
 

Pièces jointes

  • SaisieFiltrageAuto_v004.xlsm
    40.4 KB · Affichages: 38

youky(BJ)

XLDnaute Barbatruc
Houlaaaa!!!!!!
la colonne E n'a besoin d'être mis une seule fois en format date
c'est lorsque l'on écrit la date à partir d'un textbox qui lui est du texte et non converti en un chiffre de date
Il faut donc vite convertir la donnée du textbox avant de l'écrire donc on mets Cdate(textBox5)
il est possible aussi de jouer sur le format
Si tu essayes [A1]="25/12/2016" cela ne sera pas une date mais affiché pareil et [A1]=Cdate("25/12/2016")
affichera bien la date qui est en réalité un chiffre.
Jette un oeil sur le fichier que j'ai fait pour Subirubi ; ses dates sont format "aaaa/mm/dd" soit "2016/12/25"
et j'arrive à filtrer.
Bruno
 

C60a

XLDnaute Junior
Parfois ça fonctionne sans problème, mais parfois je suis obligé de formater la colonne E avec la macro Mydate pour pouvoir obtenir des résultats.

N'y aura-t-il pas un moyen de faire cela d'une façon automatique sans avoir recours à lancer le code manuellement à chaque fois que les choses coincent ?
 

youky(BJ)

XLDnaute Barbatruc
Ce fichier reçois t'il des données de l'exterieur qui puissent modifier le format des dates
sinon je vois pas pourquoi le format change.
Vérifies si c'est toujours en format date.
Essaye encore sélectionne une date en col E ou le filtre ne fonctionne pas; va en barre de formule et place le curseur en fin de la date et Valide par entrer ou le V(la date sera reconnu comme date) et reessaye de mettre la date en textbox5
Bruno
 

C60a

XLDnaute Junior
Bonjour youki,

Ce fichier reçois t'il des données de l'exterieur qui puissent modifier le format des dates

Non !

sinon je vois pas pourquoi le format change.

La même question que je me pose !

Vérifies si c'est toujours en format date.

La colonne E est bien sous format date.

J'ai remets le code de formatage de la colonne E dans WorkBook_Open() pour éviter le problème ....

Pourtant le format est bein sur en date ?
 

C60a

XLDnaute Junior
Bonjour,

Essaye encore sélectionne une date en col E ou le filtre ne fonctionne pas; va en barre de formule et place le curseur en fin de la date et Valide par entrer ou le V(la date sera reconnu comme date) et reessaye de mettre la date en textbox5

J'ai essayé, mais ça n'a pas fonctionner !

Chez moi c'est bon

Tu veux pour le filtre ou pour le format de la colonne E ?

Parce que chez sa continu de ne pas fonctionner !

Voila un nouvel exemple avec une seule de ligne de données, ou la colonne E est formatée lors de sa conception.

Mais une fois fermé et réouvert, la saisie en TextBox5 n'est pas reconnu par le filtre comme étant une date.

Il faut avoir recours à chaque ouverture du classeur, au code de formatage de la colonne E pour que ça fonctionne.
 

Pièces jointes

  • SaisieFiltrageAuto_v005.xlsm
    40 KB · Affichages: 26

youky(BJ)

XLDnaute Barbatruc
Chez moi je ne rencontre pas ton PB sur excel2007 et 2016 tout baigne avec pas mal d'essais.
J'ai donc ajouté une colonne en H format date et mis col E en text .
Tout est fait dans ce fichier pour ne pas rencontrer de PB
Bruno
 

Pièces jointes

  • SaisieFiltrageAuto_v005.xlsm
    35.3 KB · Affichages: 30

Discussions similaires

Statistiques des forums

Discussions
312 198
Messages
2 086 107
Membres
103 120
dernier inscrit
83400ren