OVH Cloud OVH Cloud

Afficher un Filtre Automatique

11 réponses
Avatar
Gaston
Bonjour tout le monde,
Je fais un filtre automatique par VBA, mais il ne s'affiche pas, il ne
s'affiche pas de ligne.
Admettons une macro comme ceci:
Sub filtreDate()
Range("A1").Select
Selection.AutoFilter Field:=5, Criteria1:=Format(Range("A1"), "mm/dd/yyyy")
End Sub
Il ne s'affiche aucune ligne
Merci à l'avance pour vos précieux conseil
Gaston

1 réponse

1 2
Avatar
Gaston
Oui, j'ai compris, c'est intelligent ta solution,
Un gros problème de régler
Merci
Gaston

"MichDenis" wrote:


| C'est lorsqu'on veut seulement filtrer une date...
| J'ai transformé la macro mais sans bon résultat

L'exemple que je t'ai donnée servait justement ce but.

As-tu remarqué que le critère augumentait de 1 et diminuait
de 1 de la date que tu choisis.

Observe attentivement :

Dim Ddebut As Date
Dim DFin As Date
'En supposant que A2 soit une cellule
'ayant une date reconnu par excel
Ddebut = Range("A2") - 1 'le critère
DFin = Range("A2") + 1

Le critère est en A2 , si je diminue de 1 la date de début
et augmente de 1 la date de fin, je vais obtenir seulement
les enregistrement correspondant à la date A2

Pourquoi ça ? Parce qu'avec les opérateurs > ou >= ou
< ou <= , excel transforme la valeur de la date que tu passes
comme critère en valeur numérique (ce qu'est en fait une date
pour excel. De ce fait, il n'a aucun problème à identifier les
cellules qui correspondent aux critères.

Lorsque tu utilises l'opérateur " = " , Excel considère la date du
critère comme un "String" (du texte) au lieu de considérer la
date comme une valeur numérique. (ça c'est ce que tu trouves
comme explication dans les bouquins sérieux (version anglaise)
Beaucoup de ces bouquins sont traduits en français... mais je
suppute les auteurs de ne pas avoir testé leur propos avec une
version française.

La réalité, c'est que c'est possible d'utiliser la date tel qu'il propose "
comme critère... mais il y a plusieurs cas particulier et cela serait
trop long à expliquer en ce lieu. C'est ce pourquoi je t'ai proposé
cette solution de rechange. Le fichier exemple existe, je l'ai créé
il y a un certain temps... mais faudrait que je prenne le temps de
le commenter... peut être un jour !

Une autre alternative serait d'utiliser par exemple, le filtre élaboré qui
ne cause aucun problème.






1 2