Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

macro filtre prbm format date

  • Initiateur de la discussion Initiateur de la discussion megno
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

M

megno

Guest
Bonjour,

J'aimerais que ma macro effectue un filtre en fonction d'un critère contenu dans un autre fichier.
Le hic c'est que ce critère est une date et que ça foire parce que - je pense- le format date ne doit pas être reconnu.

Voici le code :

Sheets("Transport LOU").Select
d = Range("E1").Value
Workbooks.OpenText (Sheets("Transport LOU").Cells (3, 5).Value)
nom = ActiveWorkbook.Name
Windows(nom).Activate
Selection.AutoFilter Field:=1, Criteria1:=d



où E1 = TEXTE(date;"mmmm-aa") en l'occurence = à Juin-10
et où la colonne A filtrée de la feuille Transport LOU ne contient que des dates au format mmmm-aa.

J'aimerais donc obtenir grâce au filtre que les lignes Juin-10 mais ça ne marche pas : aucune cellule n'apparait

Voici un lien vers le fichier, j'ai mis les 2 feuilles dans le même classeur :
Xooimage

Quelqu'un pourrait-il me sortir de cette mauvaise passe svp?
 
Re : macro filtre prbm format date

Bonjour,

Sans avoir télécharger le fichier.

Code:
    Dim Crit1 As String, Crit2 As String
    With Range("E1")
        Crit1 = ">=" & Format(DateSerial(Year(.Value), Month(.Value), 1), "mm/dd/yyyy")
        Crit2 = "<=" & Format(DateSerial(Year(.Value), Month(.Value) + 1, 0), "mm/dd/yyyy")
    End With
    Debug.Print Crit1, Crit2
    Selection.AutoFilter Field:=1, Criteria1:=Crit1, Operator:=xlAnd, Criteria2:=Crit2

A+
 
Re : macro filtre prbm format date

Là franchement Hasco un grand merci à toi!!!
ça fait un moment que je suis bloqué dessus et ça marche du feu de dieu!
Merci bcp!!!
 
Re : macro filtre prbm format date

Re,

@Tototiti,

Dans ma proposition:
Code:
 Dim Crit1 As String, Crit2 As String
    With Range("E1")
        Crit1 = ">=" & Format(DateSerial(Year(.Value), Month(.Value), 1), "mm/dd/yyyy")
        Crit2 = "<=" & Format(DateSerial(Year(.Value), Month(.Value) + 1, 0), "mm/dd/yyyy")
    End With
    Debug.Print Crit1, Crit2
    Selection.AutoFilter Field:=1, Criteria1:=Crit1, Operator:=xlAnd, Criteria2:=Crit2


J'avais mis au départ Crit1 et Crit2 en Date plutôt qu'en string.

Avec une date au 1/06/2010 pour Crit1.
Une une fois passé à Autofiler, la date se transformait en mm/dd/yyyy (controlée dans les champs de critères personnalisés de la feuille) alors que pour Crit2 elle passait au format dd/mm/yyyy attendu ?!😕

Aurais-tu une explication?
Les mystères d'Excel sont parfois déconcertants.🙄

A+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

J
Réponses
22
Affichages
3 K
jui42
J
Réponses
1
Affichages
1 K
Réponses
8
Affichages
1 K
Réponses
3
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…