× Aidez la recherche contre le COVID-19 avec votre ordi ! Rejoignez l'équipe PC Astuces Folding@home
 > Tous les forums > Forum Bureautique
 VBA AutoFilter entre deux dates ne fonctionne pasSujet résolu
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
jmsch
  Posté le 18/02/2017 @ 13:59 
Aller en bas de la page 
Petit astucien

Bonjour,

je cherche à filtrer une plage suivant la DateDebut et DateFin. Je suis sur excel 2010.
Dans le fichier test joint je filtre date debut 01/01/2017 et date fin 04/01/2017.
Les lignes ou la date est antérieur à datedebut s'affichent. Je ne comprend pas ou j'ai mon erreur.

Le code ne fonctionne pas si la datedebut est sur une autre année que datefin.
Si quelqu'un pouvait y jeter un œil ce serait sympa.

merci

http://www.cjoint.com/c/GBsmYGnK3NC



Modifié par jmsch le 18/02/2017 14:20
Publicité
ferrand
 Posté le 18/02/2017 à 16:03 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Bonsoir,

Sub filtredate()
Dim DateDebut, DateFin
DateDebut = CLng(DateValue("01/01/2017"))
DateFin = CLng(DateValue("04/01/2017"))
With Worksheets("Feuil1")
If .FilterMode Then .ShowAllData
.Range("$J$1:BV1").AutoFilter 64, ">=" & DateDebut, xlAnd, "<=" & DateFin
End With
End Sub

Cordialement.

jmsch
 Posté le 20/02/2017 à 17:04 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Merci Ferrand pour le code.
Le filtre fonctionne.

Je voudrais juste une petite explication.
Tu déclares tes variables date : Dim Date1, Date2

Pourquoi ne pas les déclarer en tant que Date et pourquoi ça ne fonctionne plus si on les déclares en tant que Date
Dim Date1 As Date
Dim Date1 As Date

ferrand
 Posté le 21/02/2017 à 01:04 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Pour qu'elles ne soient pas de type Date justement !

Regarde le code : j'affecte bien une date à ces variables, mais dont je force la conversion en entier Long, qui est la forme sous laquelle les dates sont stockées dans Excel.

Le type Date inclut des éléments de formats liés aux paramètres régionaux qui font que VBA ne s'y retrouve pas lors du filtrage et ne parvient plus à identifier la valeur stockée dans les cellules...

Ici les dates sont définies directement, mais si tu devais les prélever dans des cellules, il faut utiliser la propriété Value2 au lieu de Value. Cette propriété renvoie la même chose que Value pour presque toutes les données, ... sauf les dates et les valeurs monétaires (pour lesquelles elle renvoie les valeurs numérique brutes).

Cordialement.

Page : [1] 
Page 1 sur 1

Vous devez être connecté pour poster des messages. Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !


Les bons plans du moment PC Astuces

Tous les Bons Plans
79,95 €Clavier Gaming Logitech G513 Carbon Lightsync RVB à 79,95 €
Valable jusqu'au 25 Décembre

Materiel.net fait une promotion sur le clavier Gaming Logitech G513 Carbon Lightsync RVB qui passe à 79,95 € au lieu de 129 € ailleurs. Mélange parfait de performances, de technologies et d'une conception d'une qualité inégalée, le clavier G513 est un clavier gaming mécanique RVB équipé des switches mécaniques tactiles avancés Romer-G plébiscités par les professionnels d'eSports du monde entier. La coque en alliage aluminium robuste et légère apporte une rigidité et une apparence haut de gamme tout en lui conférant une forme fine semblable à une lame. Et pour davantage de confort, le Logitech G513 dispose d'un repose-poignets en mousse à mémoire de forme. Le Logitech G513 est doté d'un rétro-éclairage RVB complet d'environ 16.8 millions de couleurs avec un éclairage des touches personnalisable. De plus, grâce à la nouvelle technologie Lightsync, l'éclairage suit le rythme des jeux pour offrir l'expérience RVB la plus immersive qui soit.


> Voir l'offre
26,99 €Clavier sans fil Microsoft All in One avec pad intégré à 26,99 €
Valable jusqu'au 04 Décembre

Amazon fait une promotion sur le clavier Microsoft All in One qui passe à 26,99 € au lieu de 39 €. Ce clavier sans fil (jusqu'à 9 mètres) est idéal pour piloter un ordinateur à distance puisqu'il intègre un touchpad pour contrôler également la souris. Léger, solide et résistant aux éclaboussures, il comporte de nombreuses touches multimédia personnalisables. Il est garanti 3 ans. La livraison est gratuite.


> Voir l'offre
299,99 €Ecran 27 pouces Acer Nitro XV272UP (QHD, IPS, 144 Hz) à 299,99 €
Valable jusqu'au 04 Décembre

Fnac fait une promotion sur l'écran 27 pouces Acer Nitro XV272UP (QHD 2560x1440, IPS, 144 Hz) à 299,99 € au lieu de 399 €. L'écran est Adaptive Sync et compatible Freesync et GSync.


> Voir l'offre

Sujets relatifs
Difference entre deux dates
excel 2007 calculer la différence entre deux dates
Formule pour calculer l'écart entre deux dates
Nombre de jours entre deux dates.
si entre deux dates....
excel caculer entre deux dates et...
Combien de mois entre deux dates ?
Différence entre deux dates
Obtenir tous les nombres entiers entre deux nombres
Calcul avec excel entre 2 dates sur plusiuers années
Plus de sujets relatifs à VBA AutoFilter entre deux dates ne fonctionne pas
 > Tous les forums > Forum Bureautique