Filtre avec variable

arma

XLDnaute Nouveau
Bonjour à tous,

Je suis en train de me faire plaisir (à mon humble niveau) en créant une commande guidant pas à pas l’utilisateur dans la création d’un suivi de CA. Grâce à ce site notamment, j’ai surmonté la plupart des écueils sauf le dernier bien entendu : comment créer un filtre (en VBA) intégrant une variable ?
En l’occurrence, si j’ai dans ma commande:

Selection.AutoFilter Field:=1, Criteria1:=">=janv-2009", Operator:=xlAnd _
, Criteria2:="<=mars-2009"

Comment faire pour que "<=mars-2009" soit défini à l’aide d’une variable (« y » dans mon cas) ?
La variable « y » est déjà définie par un If …ElseIf précédemment mais même en modifiant le format ou la valeur, je n’arrive à rien de concluant.
Merci pour votre aide car je sèche sévèrement à un poil de la réussite.
 

Catrice

XLDnaute Barbatruc
Re : Filtre avec variable

Bonjour,

Il faut que y soit un format date ou un N° de série date (par ex aujourd'hui = 39952)
Le mars-2009 récupéré par macro ne fontionnera pas tel quel.

donc :

y=39952
Selection.AutoFilter Field:=1, Criteria1:=">=janv-2009", Operator:=xlAnd , Criteria2:="<=" & y

ou bien y = #1/3/2009#
Inférieur à Mars 2009 doit normalement correspondre à <#1/3/2009#

Macro =>
Sub Test()
y = Format(DateSerial(2009, 3, 1), "mm/dd/yyyy")
'ou
'y = #1/3/2009#
'ou
'y = 39873
Range("A1").AutoFilter Field:=1, Criteria1:="<" & y
End Sub

Si c'est une cellule, tu peux faire =>
y=range("A1").Value2
Range("A1").AutoFilter Field:=1, Criteria1:="<" & y


Peux tu préciser comment est calculé y ?

Voir le fichier joint
 

Pièces jointes

  • Classeur1.xls
    24 KB · Affichages: 56
  • Classeur1.xls
    24 KB · Affichages: 58
  • Classeur1.xls
    24 KB · Affichages: 57
Dernière édition:

arma

XLDnaute Nouveau
Re : Filtre avec variable

Merci beaucoup pour cette réponse. La mienne a été plus lente car il a fallu que je comprenne et transforme ton aide à mon besoin.
Effectivement, mon "y" était mal défini car s'il reprenait l'idée d'un format Date, je passerai sur la façon dont je m'y suis pris :eek: C'était assez loin de ta solution...
Encore merci car cela m'a permis de clore un gros boulot visant à rendre mes collègues un peu plus fainéant sur cette appli :D
(Donc merci de leur part également)
 

Discussions similaires

Statistiques des forums

Discussions
312 769
Messages
2 091 935
Membres
105 113
dernier inscrit
AOUJIL