Filtre avancé puis macro

Le
Luc
Bonjour,
J'avais sous excel 2003, une macro qui exécute un filtre élaboré et qui
fonctionnait.
Sous excel 2010, le filtre élaboré fonctionne manuellement mais si je
crée une macro quand je clique le bouton de la macro, mes cellules sont
vides.
Dans les critères, il y a des critères de dates.
Merci de vos lumières.
Luc
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
isabelle
Le #25686962
bonjour Luc,

est ce avec une zone de critère ?

Sub AdvanceFilter()
Range("A1:B8").AdvancedFilter _
Action:=xlFilterInPlace, _
CriteriaRange:=Range("I1:I2"), _
Unique:úlse
End Sub

isabelle

Le 2013-09-26 15:18, Luc a écrit :
Bonjour,
J'avais sous excel 2003, une macro qui exécute un filtre élaboré et qui
fonctionnait.
Sous excel 2010, le filtre élaboré fonctionne manuellement mais si je
crée une macro quand je clique le bouton de la macro, mes cellules sont
vides.
Dans les critères, il y a des critères de dates.
Merci de vos lumières.
Luc


Luc
Le #25688702
isabelle a exposé le 26/09/2013 :
bonjour Luc,

est ce avec une zone de critère ?

Sub AdvanceFilter()
Range("A1:B8").AdvancedFilter _
Action:=xlFilterInPlace, _
CriteriaRange:=Range("I1:I2"), _
Unique:úlse
End Sub

isabelle

Le 2013-09-26 15:18, Luc a écrit :
Bonjour,
J'avais sous excel 2003, une macro qui exécute un filtre élaboré et qui
fonctionnait.
Sous excel 2010, le filtre élaboré fonctionne manuellement mais si je
crée une macro quand je clique le bouton de la macro, mes cellules sont
vides.
Dans les critères, il y a des critères de dates.
Merci de vos lumières.
Luc





Bonjour Isabelle
Il y a bien des zones de critères, d'abord sur les dates puis sur les
noms.
En mettant les dates en format nombre ca marche, alors qu'avec Excel
2003, il n'y avait pas besoin !
Luc
MichD
Le #25688752
Bonjour,

Je n'éprouve aucun problème avec la solution d'Isabelle.

Exemple :

Nom de l'onglet de la feuille "Feuil1"
En A1, l'étiquette de colonne : Dates
De A2 à Ax : des dates

Zone de critère pour le filtre avancé : E1:E2
En E1 : Dates
En E2 : Une date appartenant à la colonne A2:Ax au FORMAT DATE RECONNU PAR
EXCEL.

Et le code :
'---------------------------------------------
Sub test()
Dim Sh As Worksheet

Set Sh = Worksheets("Feuil1") 'Nom feuille à adapter au besoin

With Sh
With .Range("A1:A" & .Range("A65536").End(xlUp).Row)
.AdvancedFilter xlFilterInPlace, criteriaRange:=Sh.Range("E1:E2")
End With
End With
End Sub
'---------------------------------------------


MichD
---------------------------------------------------------------
Luc
Le #25689372
MichD a présenté l'énoncé suivant :
Bonjour,

Je n'éprouve aucun problème avec la solution d'Isabelle.

Exemple :

Nom de l'onglet de la feuille "Feuil1"
En A1, l'étiquette de colonne : Dates
De A2 à Ax : des dates

Zone de critère pour le filtre avancé : E1:E2
En E1 : Dates
En E2 : Une date appartenant à la colonne A2:Ax au FORMAT DATE RECONNU PAR
EXCEL.

Et le code :
'---------------------------------------------
Sub test()
Dim Sh As Worksheet

Set Sh = Worksheets("Feuil1") 'Nom feuille à adapter au besoin

With Sh
With .Range("A1:A" & .Range("A65536").End(xlUp).Row)
.AdvancedFilter xlFilterInPlace, criteriaRange:=Sh.Range("E1:E2")
End With
End With
End Sub
'---------------------------------------------


MichD
---------------------------------------------------------------


Bonjour,
Voilà la macro :
Sub Guides()
'
' Guides Macro
' Macro enregistrée le 18/06/2013 par Anne
'

'
Range("BaseDonnées").AdvancedFilter Action:=xlFilterCopy,
CriteriaRange:= _
Range("A1:C2"), CopyToRange:=Range("B7:P7"), Unique:úlse
End Sub

et les critères (A1:C2):
Guide Date Date
DESVAUX Coralie >/9/13 <1/12/13

Quand j'exécute, il m'extraie rien (tableau vide) !!!

Luc
MichD
Le #25689722
Si tu veux utiliser des critères "Plus grand que et Plus petit que"
dans un filtre avancé, tu peux utiliser une formule comme ceci :

En supposant que la colonne A:A représente des dates avec une
étiquette de colonne... tu remplaces les dates par celles qui te
convient.

Zone de critère E1:E2
En E1, ou tu laisses totalement vide ou tu choisis une étiquette
qui n'apparaît pas dans ton tableau des données
En E2, la formule suivante : =ET(A2>"06/10/2013"*1;A2<"18/10/2013"*1)


MichD
---------------------------------------------------------------
Luc
Le #25691772
MichD avait écrit le 28/09/2013 :
Si tu veux utiliser des critères "Plus grand que et Plus petit que"
dans un filtre avancé, tu peux utiliser une formule comme ceci :

En supposant que la colonne A:A représente des dates avec une
étiquette de colonne... tu remplaces les dates par celles qui te
convient.

Zone de critère E1:E2
En E1, ou tu laisses totalement vide ou tu choisis une étiquette
qui n'apparaît pas dans ton tableau des données
En E2, la formule suivante : =ET(A2>"06/10/2013"*1;A2<"18/10/2013"*1)


MichD
---------------------------------------------------------------



Bonjour,
Merci de ta réponse que n'ai pas encore essayé,
voilà la solution que j'avais trouvé :
j'ai créé une colonne avec le premier jour de chaque mois de l'année
que j'ai besoin,
dans la colonne en face B6 je fais ¦ en format nombre et format
Texte.
donc si A6 = 1-janv.-13 en B6 il met 41275
et A18 = 31-déc.-13 en B18 il met 41639

puis dans la zone critère A1:C2
A1= Guide
A2= DESVAUX Coralie

B1(1er critère) = Date
B2 =">41275"

C1 (2ème critère) = Date
C2 ="<41639"

et là, la macro m'extraie bien les données demandées.

Luc
MichD
Le #25691892
Tu pourrais aussi employer cette syntaxe :

B1(1er critère) = Date
B2 =">"&"06/10/2013"*1"

C1 (2ème critère) = Date
C2 =">"&"17/10/2013"*1

Après avoir validé B2 va afficher : >41553 et C2 : >41564
Sauf que tu pourras visualiser dans la barre de formule
les dates que tu as saisies.

L'avantage d'une formule, elle permet l'utilisation d'une seule cellule!


MichD
---------------------------------------------------------------
Publicité
Poster une réponse
Anonyme