Filtre VBA Date+""

Salut les pro de la macro,

J'aurais une petite question, comment on fait un filtre en VBA ? Je veux dire un filtre personnalisé pcq j'ai pas trouvé de truc sur la toile expliquant clairement comment faire avec tout la syntaxe.

Car j’aurais besoin de faire un filtre qui tri un tableau selon la date du jour et les cases vides càd qui ne laisse plus apparaître les lignes ou j'ai la date du jour ou une case vide dans la 3eme colonne du tableau.

Voila mon code qui ne fonctionne pas, j'ai réutilise la synthaxe de filtre que j 'avais fais en enregistrant la macro.

Sub filtre_date_leve()

    Range("D1").Select
    Selection.AutoFilter
    ActiveSheet.Range("$D$1:$D$19").AutoFilter Field:=4, Criteria1:= _
        xlFilterToday, Operator:=xlFilterDynamic
    ActiveSheet.Range("$D$5:$D$19").AutoFilter Field:=4, Criteria1:=""

End Sub

Je sais pas si c'est très claire

Merci d'avance pour votre réponse.

Sinon j'ai essayé ça mais ça ne fonctionne pas mieux il ya un problème de type sans doute en rapport avec le fait qu'une date est un nombre et "" n'est rien. J'ai l'erreur 1004 qui apparaît.

Sub filtre_date_leve()

  Sub filtre_date_leve()

    Range("D1").Select
    Selection.AutoFilter
    ActiveSheet.Range("$A$4:$D$19").AutoFilter Field:=4, Criterial1:="=", Operator:=xlOr, Criterial2:= _
        xlFilterToday, Operator:=xlFilterDynamic

End Sub

    End Sub

Vraiment personne j'ai rien trouvé de concluant pour faire des filtres ne fonction de la date du jour même

Bonjour

Au lieu de impatienter, fournis un fichier pour les tests

Je ne pense pas t'aider, car je crois que tu utilises des paramètres XL 2007, mais cela ne m’empêchera pas de regarder

Bonjour,

Je suis en train de changer le code pour essayer de trouver une formulation qui marche, peut être en comparant la valeur de la date du jour en G2 a la valeur de la date dans la colonne mais ça ne fonctionne pas (je ne connais pas les synthaxe de VBA)

Merci

22essai.xlsm (32.12 Ko)

Bonjour

Un essai avec XL 2003

Le filtre se fait sur la colonne B

Sub filtre_date()
  Range("A2:D19").AutoFilter field:=2, Criteria1:="<>" & CSng(Date), Operator:=xlAnd, Criteria2:="<>"
End Sub

Merci de ta réponse mais ça ne fonctionne pas les cases vides ne sont pas prise en compte et il me garde des lignes avec des dates antérieures. Le filtre s'effectue sur la colonne 4, si ça peut aider à m'aider.

Merci d'avance

Bonjour

Ta demande

Kant1 a écrit :

càd qui ne laisse plus apparaître les lignes ou j'ai la date du jour

Tu n'as pas préciser "antérieur à la date du jour"

Kant1 a écrit :

Le filtre s'effectue sur la colonne 4

Modifies le field

Sub filtre_date()
  Range("A2:D19").AutoFilter field:=4, Criteria1:=">" & CSng(Date), Operator:=xlAnd, Criteria2:="<>"
End Sub
resultat filtre kant1

Ah ouis il manque un que, donc je reformule je veux que une fois le filtre appliqué il n'apparaisse plus que les lignes où la date dans la colonne 4 est celle du jour ou bien celle ou il n'y en a pas.

Merci pour ton aide mais malheureusement ça ne fonctionne tjs pas je n'ai que trois ligne qui ressorte dont une avec une date antérieure.

Bonsoir Kant1, Banzai64

au risque de me tromper encore une fois

Sub filtre_date()
   Range("A2:D19").AutoFilter Field:=4, Criteria1:="=", Operator:=xlOr, Criteria2:=VBA.Date
End Sub

Bonjour,

Merci de aide mais ton filtre ne fait pas exactement ce que je veux il ne prend que les lignes vide sans celle présentant la date du jour en D.

J'ai essayé de combiné vaut deux filtre pour voir ce que sa donnait mais VBA bug quand je le lance pcq j'ai 3 critère semble t'il.

Voici le message d'erreur "Erreur de Compilation. Argument nommé introuvable" et il me surligne le 3eme critère.

EDIT: Bon grace à ce que vous m'avez donner et qq recherche supplémentaire j'ai trouvé la solution.

Sub filtre_date_leve()

  ActiveSheet.Range("$A$2:$D$10").AutoFilter Field:=4, Criteria1:="=", _
        Operator:=xlOr, Criteria2:="=" & Date

End Sub
Rechercher des sujets similaires à "filtre vba date"