Bonjour,
J'ai essayé de faire un "filtre" en vba ... mais je me suis pour l'inst ant
limité à créer un bouton pour réinitialiser les listes ...
1- Comment peut-on supprimer les "petites flèches" sur les entêtes de
colonnes qu'on ne veut pas filtrer ?
2- Si ma ligne de "titre" (où figurent les rubriques) est situé à l a 200ème
ligne de ma feuille, cela pose-t-il un pb quelconque ?
3- Y-t-il un moyen de singulariser la colonne sur laquelle est effectué le
filtre ? J'avais imaginé une mise en forme conditionnelle sur la cellul e du
titre concerné ... mais celle-ci ne change pas !
4- pourriez-vous svp me dire à quoi devrait ressembler une macro "basiq ue"
de filtre sachant par exemple que les "titres" sont sur la ligne 200 ?
Faut-il dimensionner la plage de valeurs filtrées ou le filtre s'effect ue
par défaut sur toutes les lignes inférieures à la ligne de "titres" ?
Un grand merci d'avance pour vos lumières éventuelles.
JP
Bonjour,
J'ai essayé de faire un "filtre" en vba ... mais je me suis pour l'inst ant
limité à créer un bouton pour réinitialiser les listes ...
1- Comment peut-on supprimer les "petites flèches" sur les entêtes de
colonnes qu'on ne veut pas filtrer ?
2- Si ma ligne de "titre" (où figurent les rubriques) est situé à l a 200ème
ligne de ma feuille, cela pose-t-il un pb quelconque ?
3- Y-t-il un moyen de singulariser la colonne sur laquelle est effectué le
filtre ? J'avais imaginé une mise en forme conditionnelle sur la cellul e du
titre concerné ... mais celle-ci ne change pas !
4- pourriez-vous svp me dire à quoi devrait ressembler une macro "basiq ue"
de filtre sachant par exemple que les "titres" sont sur la ligne 200 ?
Faut-il dimensionner la plage de valeurs filtrées ou le filtre s'effect ue
par défaut sur toutes les lignes inférieures à la ligne de "titres" ?
Un grand merci d'avance pour vos lumières éventuelles.
JP
Bonjour,
J'ai essayé de faire un "filtre" en vba ... mais je me suis pour l'inst ant
limité à créer un bouton pour réinitialiser les listes ...
1- Comment peut-on supprimer les "petites flèches" sur les entêtes de
colonnes qu'on ne veut pas filtrer ?
2- Si ma ligne de "titre" (où figurent les rubriques) est situé à l a 200ème
ligne de ma feuille, cela pose-t-il un pb quelconque ?
3- Y-t-il un moyen de singulariser la colonne sur laquelle est effectué le
filtre ? J'avais imaginé une mise en forme conditionnelle sur la cellul e du
titre concerné ... mais celle-ci ne change pas !
4- pourriez-vous svp me dire à quoi devrait ressembler une macro "basiq ue"
de filtre sachant par exemple que les "titres" sont sur la ligne 200 ?
Faut-il dimensionner la plage de valeurs filtrées ou le filtre s'effect ue
par défaut sur toutes les lignes inférieures à la ligne de "titres" ?
Un grand merci d'avance pour vos lumières éventuelles.
JP
Bonsoir,
3- Dans l'onglet FonctionPerso1, une MFC colorie les colonnes
filtrées:
http://boisgontierj.free.fr/fichiers/jb-filtreautomatique.xls
Cordialement JBBonjour,
J'ai essayé de faire un "filtre" en vba ... mais je me suis pour
l'instant limité à créer un bouton pour réinitialiser les listes ...
1- Comment peut-on supprimer les "petites flèches" sur les entêtes de
colonnes qu'on ne veut pas filtrer ?
2- Si ma ligne de "titre" (où figurent les rubriques) est situé à la
200ème ligne de ma feuille, cela pose-t-il un pb quelconque ?
3- Y-t-il un moyen de singulariser la colonne sur laquelle est
effectué le filtre ? J'avais imaginé une mise en forme
conditionnelle sur la cellule du titre concerné ... mais celle-ci ne
change pas !
4- pourriez-vous svp me dire à quoi devrait ressembler une macro
"basique" de filtre sachant par exemple que les "titres" sont sur la
ligne 200 ? Faut-il dimensionner la plage de valeurs filtrées ou le
filtre s'effectue par défaut sur toutes les lignes inférieures à la
ligne de "titres" ?
Un grand merci d'avance pour vos lumières éventuelles.
JP
Bonsoir,
3- Dans l'onglet FonctionPerso1, une MFC colorie les colonnes
filtrées:
http://boisgontierj.free.fr/fichiers/jb-filtreautomatique.xls
Cordialement JB
Bonjour,
J'ai essayé de faire un "filtre" en vba ... mais je me suis pour
l'instant limité à créer un bouton pour réinitialiser les listes ...
1- Comment peut-on supprimer les "petites flèches" sur les entêtes de
colonnes qu'on ne veut pas filtrer ?
2- Si ma ligne de "titre" (où figurent les rubriques) est situé à la
200ème ligne de ma feuille, cela pose-t-il un pb quelconque ?
3- Y-t-il un moyen de singulariser la colonne sur laquelle est
effectué le filtre ? J'avais imaginé une mise en forme
conditionnelle sur la cellule du titre concerné ... mais celle-ci ne
change pas !
4- pourriez-vous svp me dire à quoi devrait ressembler une macro
"basique" de filtre sachant par exemple que les "titres" sont sur la
ligne 200 ? Faut-il dimensionner la plage de valeurs filtrées ou le
filtre s'effectue par défaut sur toutes les lignes inférieures à la
ligne de "titres" ?
Un grand merci d'avance pour vos lumières éventuelles.
JP
Bonsoir,
3- Dans l'onglet FonctionPerso1, une MFC colorie les colonnes
filtrées:
http://boisgontierj.free.fr/fichiers/jb-filtreautomatique.xls
Cordialement JBBonjour,
J'ai essayé de faire un "filtre" en vba ... mais je me suis pour
l'instant limité à créer un bouton pour réinitialiser les listes ...
1- Comment peut-on supprimer les "petites flèches" sur les entêtes de
colonnes qu'on ne veut pas filtrer ?
2- Si ma ligne de "titre" (où figurent les rubriques) est situé à la
200ème ligne de ma feuille, cela pose-t-il un pb quelconque ?
3- Y-t-il un moyen de singulariser la colonne sur laquelle est
effectué le filtre ? J'avais imaginé une mise en forme
conditionnelle sur la cellule du titre concerné ... mais celle-ci ne
change pas !
4- pourriez-vous svp me dire à quoi devrait ressembler une macro
"basique" de filtre sachant par exemple que les "titres" sont sur la
ligne 200 ? Faut-il dimensionner la plage de valeurs filtrées ou le
filtre s'effectue par défaut sur toutes les lignes inférieures à la
ligne de "titres" ?
Un grand merci d'avance pour vos lumières éventuelles.
JP
Un petit exemple :
Un filtre sur la colonne No 2 d'une plage définie
comme A1:Cx , x étant la dernière cellule de la colonne C
Tu adaptes le nom de la feuille de la procédure et le critère
"Louise".
Le triangle du filtre auto. devrait apparaître seulement sur la
colonne 2
Et un filtre automatique peut débuter sur la ligne de ton choix... pas
nécessairement à partir de la ligne 1
La colonne 2 de la plage contenait des prénoms dans mon exemple ...
'----------------------------
Sub test()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:C" & .Range("A65536").End(xlUp).Row)
End With
With Rg
For A = 1 To Rg.Columns.Count
.AutoFilter field:=A, visibleDropDown:úlse
Next
.AutoFilter field:=2, Criteria1:="Louise", visibleDropDown:=True
End With
End Sub
'----------------------------
"j-pascal" a écrit dans le message de news:
%
Bonjour,
J'ai essayé de faire un "filtre" en vba ... mais je me suis pour
l'instant limité à créer un bouton pour réinitialiser les listes ...
1- Comment peut-on supprimer les "petites flèches" sur les entêtes de
colonnes qu'on ne veut pas filtrer ?
2- Si ma ligne de "titre" (où figurent les rubriques) est situé à la
200ème ligne de ma feuille, cela pose-t-il un pb quelconque ?
3- Y-t-il un moyen de singulariser la colonne sur laquelle est
effectué le filtre ? J'avais imaginé une mise en forme conditionnelle
sur la cellule du titre concerné ... mais celle-ci ne change pas !
4- pourriez-vous svp me dire à quoi devrait ressembler une macro
"basique" de filtre sachant par exemple que les "titres" sont sur la
ligne 200 ? Faut-il dimensionner la plage de valeurs filtrées ou le
filtre s'effectue par défaut sur toutes les lignes inférieures à la
ligne de "titres" ?
Un grand merci d'avance pour vos lumières éventuelles.
JP
Un petit exemple :
Un filtre sur la colonne No 2 d'une plage définie
comme A1:Cx , x étant la dernière cellule de la colonne C
Tu adaptes le nom de la feuille de la procédure et le critère
"Louise".
Le triangle du filtre auto. devrait apparaître seulement sur la
colonne 2
Et un filtre automatique peut débuter sur la ligne de ton choix... pas
nécessairement à partir de la ligne 1
La colonne 2 de la plage contenait des prénoms dans mon exemple ...
'----------------------------
Sub test()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:C" & .Range("A65536").End(xlUp).Row)
End With
With Rg
For A = 1 To Rg.Columns.Count
.AutoFilter field:=A, visibleDropDown:úlse
Next
.AutoFilter field:=2, Criteria1:="Louise", visibleDropDown:=True
End With
End Sub
'----------------------------
"j-pascal" <nospam-j-pascal@free.fr> a écrit dans le message de news:
%23ynK3bnOHHA.4260@TK2MSFTNGP02.phx.gbl...
Bonjour,
J'ai essayé de faire un "filtre" en vba ... mais je me suis pour
l'instant limité à créer un bouton pour réinitialiser les listes ...
1- Comment peut-on supprimer les "petites flèches" sur les entêtes de
colonnes qu'on ne veut pas filtrer ?
2- Si ma ligne de "titre" (où figurent les rubriques) est situé à la
200ème ligne de ma feuille, cela pose-t-il un pb quelconque ?
3- Y-t-il un moyen de singulariser la colonne sur laquelle est
effectué le filtre ? J'avais imaginé une mise en forme conditionnelle
sur la cellule du titre concerné ... mais celle-ci ne change pas !
4- pourriez-vous svp me dire à quoi devrait ressembler une macro
"basique" de filtre sachant par exemple que les "titres" sont sur la
ligne 200 ? Faut-il dimensionner la plage de valeurs filtrées ou le
filtre s'effectue par défaut sur toutes les lignes inférieures à la
ligne de "titres" ?
Un grand merci d'avance pour vos lumières éventuelles.
JP
Un petit exemple :
Un filtre sur la colonne No 2 d'une plage définie
comme A1:Cx , x étant la dernière cellule de la colonne C
Tu adaptes le nom de la feuille de la procédure et le critère
"Louise".
Le triangle du filtre auto. devrait apparaître seulement sur la
colonne 2
Et un filtre automatique peut débuter sur la ligne de ton choix... pas
nécessairement à partir de la ligne 1
La colonne 2 de la plage contenait des prénoms dans mon exemple ...
'----------------------------
Sub test()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:C" & .Range("A65536").End(xlUp).Row)
End With
With Rg
For A = 1 To Rg.Columns.Count
.AutoFilter field:=A, visibleDropDown:úlse
Next
.AutoFilter field:=2, Criteria1:="Louise", visibleDropDown:=True
End With
End Sub
'----------------------------
"j-pascal" a écrit dans le message de news:
%
Bonjour,
J'ai essayé de faire un "filtre" en vba ... mais je me suis pour
l'instant limité à créer un bouton pour réinitialiser les listes ...
1- Comment peut-on supprimer les "petites flèches" sur les entêtes de
colonnes qu'on ne veut pas filtrer ?
2- Si ma ligne de "titre" (où figurent les rubriques) est situé à la
200ème ligne de ma feuille, cela pose-t-il un pb quelconque ?
3- Y-t-il un moyen de singulariser la colonne sur laquelle est
effectué le filtre ? J'avais imaginé une mise en forme conditionnelle
sur la cellule du titre concerné ... mais celle-ci ne change pas !
4- pourriez-vous svp me dire à quoi devrait ressembler une macro
"basique" de filtre sachant par exemple que les "titres" sont sur la
ligne 200 ? Faut-il dimensionner la plage de valeurs filtrées ou le
filtre s'effectue par défaut sur toutes les lignes inférieures à la
ligne de "titres" ?
Un grand merci d'avance pour vos lumières éventuelles.
JP
Un petit exemple :
Un filtre sur la colonne No 2 d'une plage définie
comme A1:Cx , x étant la dernière cellule de la colonne C
Tu adaptes le nom de la feuille de la procédure et le critère
"Louise".
Le triangle du filtre auto. devrait apparaître seulement sur la
colonne 2
Et un filtre automatique peut débuter sur la ligne de ton choix... pas
nécessairement à partir de la ligne 1
La colonne 2 de la plage contenait des prénoms dans mon exemple ...
'----------------------------
Sub test()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:C" & .Range("A65536").End(xlUp).Row)
End With
With Rg
For A = 1 To Rg.Columns.Count
.AutoFilter field:=A, visibleDropDown:úlse
Next
.AutoFilter field:=2, Criteria1:="Louise", visibleDropDown:=True
End With
End Sub
'----------------------------
"j-pascal" a écrit dans le message de news:
%
Bonjour,
J'ai essayé de faire un "filtre" en vba ... mais je me suis pour
l'instant limité à créer un bouton pour réinitialiser les listes ...
1- Comment peut-on supprimer les "petites flèches" sur les entêtes de
colonnes qu'on ne veut pas filtrer ?
2- Si ma ligne de "titre" (où figurent les rubriques) est situé à la
200ème ligne de ma feuille, cela pose-t-il un pb quelconque ?
3- Y-t-il un moyen de singulariser la colonne sur laquelle est
effectué le filtre ? J'avais imaginé une mise en forme conditionnelle
sur la cellule du titre concerné ... mais celle-ci ne change pas !
4- pourriez-vous svp me dire à quoi devrait ressembler une macro
"basique" de filtre sachant par exemple que les "titres" sont sur la
ligne 200 ? Faut-il dimensionner la plage de valeurs filtrées ou le
filtre s'effectue par défaut sur toutes les lignes inférieures à la
ligne de "titres" ?
Un grand merci d'avance pour vos lumières éventuelles.
JP
Un petit exemple :
Un filtre sur la colonne No 2 d'une plage définie
comme A1:Cx , x étant la dernière cellule de la colonne C
Tu adaptes le nom de la feuille de la procédure et le critère
"Louise".
Le triangle du filtre auto. devrait apparaître seulement sur la
colonne 2
Et un filtre automatique peut débuter sur la ligne de ton choix... pas
nécessairement à partir de la ligne 1
La colonne 2 de la plage contenait des prénoms dans mon exemple ...
'----------------------------
Sub test()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:C" & .Range("A65536").End(xlUp).Row)
End With
With Rg
For A = 1 To Rg.Columns.Count
.AutoFilter field:=A, visibleDropDown:úlse
Next
.AutoFilter field:=2, Criteria1:="Louise", visibleDropDown:=True
End With
End Sub
'----------------------------
"j-pascal" <nospam-j-pascal@free.fr> a écrit dans le message de news:
%23ynK3bnOHHA.4260@TK2MSFTNGP02.phx.gbl...
Bonjour,
J'ai essayé de faire un "filtre" en vba ... mais je me suis pour
l'instant limité à créer un bouton pour réinitialiser les listes ...
1- Comment peut-on supprimer les "petites flèches" sur les entêtes de
colonnes qu'on ne veut pas filtrer ?
2- Si ma ligne de "titre" (où figurent les rubriques) est situé à la
200ème ligne de ma feuille, cela pose-t-il un pb quelconque ?
3- Y-t-il un moyen de singulariser la colonne sur laquelle est
effectué le filtre ? J'avais imaginé une mise en forme conditionnelle
sur la cellule du titre concerné ... mais celle-ci ne change pas !
4- pourriez-vous svp me dire à quoi devrait ressembler une macro
"basique" de filtre sachant par exemple que les "titres" sont sur la
ligne 200 ? Faut-il dimensionner la plage de valeurs filtrées ou le
filtre s'effectue par défaut sur toutes les lignes inférieures à la
ligne de "titres" ?
Un grand merci d'avance pour vos lumières éventuelles.
JP
Un petit exemple :
Un filtre sur la colonne No 2 d'une plage définie
comme A1:Cx , x étant la dernière cellule de la colonne C
Tu adaptes le nom de la feuille de la procédure et le critère
"Louise".
Le triangle du filtre auto. devrait apparaître seulement sur la
colonne 2
Et un filtre automatique peut débuter sur la ligne de ton choix... pas
nécessairement à partir de la ligne 1
La colonne 2 de la plage contenait des prénoms dans mon exemple ...
'----------------------------
Sub test()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:C" & .Range("A65536").End(xlUp).Row)
End With
With Rg
For A = 1 To Rg.Columns.Count
.AutoFilter field:=A, visibleDropDown:úlse
Next
.AutoFilter field:=2, Criteria1:="Louise", visibleDropDown:=True
End With
End Sub
'----------------------------
"j-pascal" a écrit dans le message de news:
%
Bonjour,
J'ai essayé de faire un "filtre" en vba ... mais je me suis pour
l'instant limité à créer un bouton pour réinitialiser les listes ...
1- Comment peut-on supprimer les "petites flèches" sur les entêtes de
colonnes qu'on ne veut pas filtrer ?
2- Si ma ligne de "titre" (où figurent les rubriques) est situé à la
200ème ligne de ma feuille, cela pose-t-il un pb quelconque ?
3- Y-t-il un moyen de singulariser la colonne sur laquelle est
effectué le filtre ? J'avais imaginé une mise en forme conditionnelle
sur la cellule du titre concerné ... mais celle-ci ne change pas !
4- pourriez-vous svp me dire à quoi devrait ressembler une macro
"basique" de filtre sachant par exemple que les "titres" sont sur la
ligne 200 ? Faut-il dimensionner la plage de valeurs filtrées ou le
filtre s'effectue par défaut sur toutes les lignes inférieures à la
ligne de "titres" ?
Un grand merci d'avance pour vos lumières éventuelles.
JP
Un petit exemple :
Un filtre sur la colonne No 2 d'une plage définie
comme A1:Cx , x étant la dernière cellule de la colonne C
Tu adaptes le nom de la feuille de la procédure et le critère
"Louise".
Le triangle du filtre auto. devrait apparaître seulement sur la
colonne 2
Et un filtre automatique peut débuter sur la ligne de ton choix... pas
nécessairement à partir de la ligne 1
La colonne 2 de la plage contenait des prénoms dans mon exemple ...
'----------------------------
Sub test()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:C" & .Range("A65536").End(xlUp).Row)
End With
With Rg
For A = 1 To Rg.Columns.Count
.AutoFilter field:=A, visibleDropDown:úlse
Next
.AutoFilter field:=2, Criteria1:="Louise", visibleDropDown:=True
End With
End Sub
'----------------------------
"j-pascal" a écrit dans le message de news:
%
Bonjour,
J'ai essayé de faire un "filtre" en vba ... mais je me suis pour
l'instant limité à créer un bouton pour réinitialiser les listes ...
1- Comment peut-on supprimer les "petites flèches" sur les entêtes de
colonnes qu'on ne veut pas filtrer ?
2- Si ma ligne de "titre" (où figurent les rubriques) est situé à la
200ème ligne de ma feuille, cela pose-t-il un pb quelconque ?
3- Y-t-il un moyen de singulariser la colonne sur laquelle est
effectué le filtre ? J'avais imaginé une mise en forme conditionnelle
sur la cellule du titre concerné ... mais celle-ci ne change pas !
4- pourriez-vous svp me dire à quoi devrait ressembler une macro
"basique" de filtre sachant par exemple que les "titres" sont sur la
ligne 200 ? Faut-il dimensionner la plage de valeurs filtrées ou le
filtre s'effectue par défaut sur toutes les lignes inférieures à la
ligne de "titres" ?
Un grand merci d'avance pour vos lumières éventuelles.
JP
Un petit exemple :
Un filtre sur la colonne No 2 d'une plage définie
comme A1:Cx , x étant la dernière cellule de la colonne C
Tu adaptes le nom de la feuille de la procédure et le critère
"Louise".
Le triangle du filtre auto. devrait apparaître seulement sur la
colonne 2
Et un filtre automatique peut débuter sur la ligne de ton choix... pas
nécessairement à partir de la ligne 1
La colonne 2 de la plage contenait des prénoms dans mon exemple ...
'----------------------------
Sub test()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:C" & .Range("A65536").End(xlUp).Row)
End With
With Rg
For A = 1 To Rg.Columns.Count
.AutoFilter field:=A, visibleDropDown:úlse
Next
.AutoFilter field:=2, Criteria1:="Louise", visibleDropDown:=True
End With
End Sub
'----------------------------
"j-pascal" <nospam-j-pascal@free.fr> a écrit dans le message de news:
%23ynK3bnOHHA.4260@TK2MSFTNGP02.phx.gbl...
Bonjour,
J'ai essayé de faire un "filtre" en vba ... mais je me suis pour
l'instant limité à créer un bouton pour réinitialiser les listes ...
1- Comment peut-on supprimer les "petites flèches" sur les entêtes de
colonnes qu'on ne veut pas filtrer ?
2- Si ma ligne de "titre" (où figurent les rubriques) est situé à la
200ème ligne de ma feuille, cela pose-t-il un pb quelconque ?
3- Y-t-il un moyen de singulariser la colonne sur laquelle est
effectué le filtre ? J'avais imaginé une mise en forme conditionnelle
sur la cellule du titre concerné ... mais celle-ci ne change pas !
4- pourriez-vous svp me dire à quoi devrait ressembler une macro
"basique" de filtre sachant par exemple que les "titres" sont sur la
ligne 200 ? Faut-il dimensionner la plage de valeurs filtrées ou le
filtre s'effectue par défaut sur toutes les lignes inférieures à la
ligne de "titres" ?
Un grand merci d'avance pour vos lumières éventuelles.
JP
Un petit exemple :
Un filtre sur la colonne No 2 d'une plage définie
comme A1:Cx , x étant la dernière cellule de la colonne C
Tu adaptes le nom de la feuille de la procédure et le critère
"Louise".
Le triangle du filtre auto. devrait apparaître seulement sur la
colonne 2
Et un filtre automatique peut débuter sur la ligne de ton choix... pas
nécessairement à partir de la ligne 1
La colonne 2 de la plage contenait des prénoms dans mon exemple ...
'----------------------------
Sub test()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:C" & .Range("A65536").End(xlUp).Row)
End With
With Rg
For A = 1 To Rg.Columns.Count
.AutoFilter field:=A, visibleDropDown:úlse
Next
.AutoFilter field:=2, Criteria1:="Louise", visibleDropDown:=True
End With
End Sub
'----------------------------
"j-pascal" a écrit dans le message de news:
%
Bonjour,
J'ai essayé de faire un "filtre" en vba ... mais je me suis pour
l'instant limité à créer un bouton pour réinitialiser les listes ...
1- Comment peut-on supprimer les "petites flèches" sur les entêtes de
colonnes qu'on ne veut pas filtrer ?
2- Si ma ligne de "titre" (où figurent les rubriques) est situé à la
200ème ligne de ma feuille, cela pose-t-il un pb quelconque ?
3- Y-t-il un moyen de singulariser la colonne sur laquelle est
effectué le filtre ? J'avais imaginé une mise en forme conditionnelle
sur la cellule du titre concerné ... mais celle-ci ne change pas !
4- pourriez-vous svp me dire à quoi devrait ressembler une macro
"basique" de filtre sachant par exemple que les "titres" sont sur la
ligne 200 ? Faut-il dimensionner la plage de valeurs filtrées ou le
filtre s'effectue par défaut sur toutes les lignes inférieures à la
ligne de "titres" ?
Un grand merci d'avance pour vos lumières éventuelles.
JP
Voici un exemple vite fait... est-ce que tu trouves quelque chose qui
ne fonctionne pas ?
http://cjoint.com/?btwIuxX1CV
J'ai lu et relu ton code pour essayer de mieux comprendre ...
Je l'ai utilisé dans un cas simple, comme celui que tu proposes ici,
et je
suis tombé sur un os !
"Erreur d'exécution '1004' La méthode AutoFilter de la classe Range a
échoué" ! Grand moment de solitude ? Pas trouvé grand chose sur
Google ...
Au bout de 2 heures, j'ai tenté (sans trop y croire) une manip :
J'ai sélectionné ma ligne de titre et j'ai crée un Filtre depuis le
menu "Outils..." et là "miracle" le code marchait de nouveau !!! J'ai
fait ça
plus par hasard que par conviction ! Y-a-t'il une explication plus
rationnelle que la chance ?
A+ ?
JP
MichDenis wrote:Un petit exemple :
Un filtre sur la colonne No 2 d'une plage définie
comme A1:Cx , x étant la dernière cellule de la colonne C
Tu adaptes le nom de la feuille de la procédure et le critère
"Louise".
Le triangle du filtre auto. devrait apparaître seulement sur la
colonne 2
Et un filtre automatique peut débuter sur la ligne de ton choix...
pas nécessairement à partir de la ligne 1
La colonne 2 de la plage contenait des prénoms dans mon exemple ...
'----------------------------
Sub test()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:C" & .Range("A65536").End(xlUp).Row)
End With
With Rg
For A = 1 To Rg.Columns.Count
.AutoFilter field:=A, visibleDropDown:úlse
Next
.AutoFilter field:=2, Criteria1:="Louise", visibleDropDown:=True
End With
End Sub
'----------------------------
"j-pascal" a écrit dans le message de news:
%
Bonjour,
J'ai essayé de faire un "filtre" en vba ... mais je me suis pour
l'instant limité à créer un bouton pour réinitialiser les listes ...
1- Comment peut-on supprimer les "petites flèches" sur les entêtes de
colonnes qu'on ne veut pas filtrer ?
2- Si ma ligne de "titre" (où figurent les rubriques) est situé à la
200ème ligne de ma feuille, cela pose-t-il un pb quelconque ?
3- Y-t-il un moyen de singulariser la colonne sur laquelle est
effectué le filtre ? J'avais imaginé une mise en forme conditionnelle
sur la cellule du titre concerné ... mais celle-ci ne change pas !
4- pourriez-vous svp me dire à quoi devrait ressembler une macro
"basique" de filtre sachant par exemple que les "titres" sont sur la
ligne 200 ? Faut-il dimensionner la plage de valeurs filtrées ou le
filtre s'effectue par défaut sur toutes les lignes inférieures à la
ligne de "titres" ?
Un grand merci d'avance pour vos lumières éventuelles.
JP
Voici un exemple vite fait... est-ce que tu trouves quelque chose qui
ne fonctionne pas ?
http://cjoint.com/?btwIuxX1CV
J'ai lu et relu ton code pour essayer de mieux comprendre ...
Je l'ai utilisé dans un cas simple, comme celui que tu proposes ici,
et je
suis tombé sur un os !
"Erreur d'exécution '1004' La méthode AutoFilter de la classe Range a
échoué" ! Grand moment de solitude ? Pas trouvé grand chose sur
Google ...
Au bout de 2 heures, j'ai tenté (sans trop y croire) une manip :
J'ai sélectionné ma ligne de titre et j'ai crée un Filtre depuis le
menu "Outils..." et là "miracle" le code marchait de nouveau !!! J'ai
fait ça
plus par hasard que par conviction ! Y-a-t'il une explication plus
rationnelle que la chance ?
A+ ?
JP
MichDenis wrote:
Un petit exemple :
Un filtre sur la colonne No 2 d'une plage définie
comme A1:Cx , x étant la dernière cellule de la colonne C
Tu adaptes le nom de la feuille de la procédure et le critère
"Louise".
Le triangle du filtre auto. devrait apparaître seulement sur la
colonne 2
Et un filtre automatique peut débuter sur la ligne de ton choix...
pas nécessairement à partir de la ligne 1
La colonne 2 de la plage contenait des prénoms dans mon exemple ...
'----------------------------
Sub test()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:C" & .Range("A65536").End(xlUp).Row)
End With
With Rg
For A = 1 To Rg.Columns.Count
.AutoFilter field:=A, visibleDropDown:úlse
Next
.AutoFilter field:=2, Criteria1:="Louise", visibleDropDown:=True
End With
End Sub
'----------------------------
"j-pascal" <nospam-j-pascal@free.fr> a écrit dans le message de news:
%23ynK3bnOHHA.4260@TK2MSFTNGP02.phx.gbl...
Bonjour,
J'ai essayé de faire un "filtre" en vba ... mais je me suis pour
l'instant limité à créer un bouton pour réinitialiser les listes ...
1- Comment peut-on supprimer les "petites flèches" sur les entêtes de
colonnes qu'on ne veut pas filtrer ?
2- Si ma ligne de "titre" (où figurent les rubriques) est situé à la
200ème ligne de ma feuille, cela pose-t-il un pb quelconque ?
3- Y-t-il un moyen de singulariser la colonne sur laquelle est
effectué le filtre ? J'avais imaginé une mise en forme conditionnelle
sur la cellule du titre concerné ... mais celle-ci ne change pas !
4- pourriez-vous svp me dire à quoi devrait ressembler une macro
"basique" de filtre sachant par exemple que les "titres" sont sur la
ligne 200 ? Faut-il dimensionner la plage de valeurs filtrées ou le
filtre s'effectue par défaut sur toutes les lignes inférieures à la
ligne de "titres" ?
Un grand merci d'avance pour vos lumières éventuelles.
JP
Voici un exemple vite fait... est-ce que tu trouves quelque chose qui
ne fonctionne pas ?
http://cjoint.com/?btwIuxX1CV
J'ai lu et relu ton code pour essayer de mieux comprendre ...
Je l'ai utilisé dans un cas simple, comme celui que tu proposes ici,
et je
suis tombé sur un os !
"Erreur d'exécution '1004' La méthode AutoFilter de la classe Range a
échoué" ! Grand moment de solitude ? Pas trouvé grand chose sur
Google ...
Au bout de 2 heures, j'ai tenté (sans trop y croire) une manip :
J'ai sélectionné ma ligne de titre et j'ai crée un Filtre depuis le
menu "Outils..." et là "miracle" le code marchait de nouveau !!! J'ai
fait ça
plus par hasard que par conviction ! Y-a-t'il une explication plus
rationnelle que la chance ?
A+ ?
JP
MichDenis wrote:Un petit exemple :
Un filtre sur la colonne No 2 d'une plage définie
comme A1:Cx , x étant la dernière cellule de la colonne C
Tu adaptes le nom de la feuille de la procédure et le critère
"Louise".
Le triangle du filtre auto. devrait apparaître seulement sur la
colonne 2
Et un filtre automatique peut débuter sur la ligne de ton choix...
pas nécessairement à partir de la ligne 1
La colonne 2 de la plage contenait des prénoms dans mon exemple ...
'----------------------------
Sub test()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:C" & .Range("A65536").End(xlUp).Row)
End With
With Rg
For A = 1 To Rg.Columns.Count
.AutoFilter field:=A, visibleDropDown:úlse
Next
.AutoFilter field:=2, Criteria1:="Louise", visibleDropDown:=True
End With
End Sub
'----------------------------
"j-pascal" a écrit dans le message de news:
%
Bonjour,
J'ai essayé de faire un "filtre" en vba ... mais je me suis pour
l'instant limité à créer un bouton pour réinitialiser les listes ...
1- Comment peut-on supprimer les "petites flèches" sur les entêtes de
colonnes qu'on ne veut pas filtrer ?
2- Si ma ligne de "titre" (où figurent les rubriques) est situé à la
200ème ligne de ma feuille, cela pose-t-il un pb quelconque ?
3- Y-t-il un moyen de singulariser la colonne sur laquelle est
effectué le filtre ? J'avais imaginé une mise en forme conditionnelle
sur la cellule du titre concerné ... mais celle-ci ne change pas !
4- pourriez-vous svp me dire à quoi devrait ressembler une macro
"basique" de filtre sachant par exemple que les "titres" sont sur la
ligne 200 ? Faut-il dimensionner la plage de valeurs filtrées ou le
filtre s'effectue par défaut sur toutes les lignes inférieures à la
ligne de "titres" ?
Un grand merci d'avance pour vos lumières éventuelles.
JP
Voici un exemple vite fait... est-ce que tu trouves quelque chose qui
ne fonctionne pas ?
http://cjoint.com/?btwIuxX1CV
J'ai lu et relu ton code pour essayer de mieux comprendre ...
Je l'ai utilisé dans un cas simple, comme celui que tu proposes ici,
et je
suis tombé sur un os !
"Erreur d'exécution '1004' La méthode AutoFilter de la classe Range a
échoué" ! Grand moment de solitude ? Pas trouvé grand chose sur
Google ...
Au bout de 2 heures, j'ai tenté (sans trop y croire) une manip :
J'ai sélectionné ma ligne de titre et j'ai crée un Filtre depuis le
menu "Outils..." et là "miracle" le code marchait de nouveau !!! J'ai
fait ça
plus par hasard que par conviction ! Y-a-t'il une explication plus
rationnelle que la chance ?
A+ ?
JP
MichDenis wrote:Un petit exemple :
Un filtre sur la colonne No 2 d'une plage définie
comme A1:Cx , x étant la dernière cellule de la colonne C
Tu adaptes le nom de la feuille de la procédure et le critère
"Louise".
Le triangle du filtre auto. devrait apparaître seulement sur la
colonne 2
Et un filtre automatique peut débuter sur la ligne de ton choix...
pas nécessairement à partir de la ligne 1
La colonne 2 de la plage contenait des prénoms dans mon exemple ...
'----------------------------
Sub test()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:C" & .Range("A65536").End(xlUp).Row)
End With
With Rg
For A = 1 To Rg.Columns.Count
.AutoFilter field:=A, visibleDropDown:úlse
Next
.AutoFilter field:=2, Criteria1:="Louise", visibleDropDown:=True
End With
End Sub
'----------------------------
"j-pascal" a écrit dans le message de news:
%
Bonjour,
J'ai essayé de faire un "filtre" en vba ... mais je me suis pour
l'instant limité à créer un bouton pour réinitialiser les listes ...
1- Comment peut-on supprimer les "petites flèches" sur les entêtes de
colonnes qu'on ne veut pas filtrer ?
2- Si ma ligne de "titre" (où figurent les rubriques) est situé à la
200ème ligne de ma feuille, cela pose-t-il un pb quelconque ?
3- Y-t-il un moyen de singulariser la colonne sur laquelle est
effectué le filtre ? J'avais imaginé une mise en forme conditionnelle
sur la cellule du titre concerné ... mais celle-ci ne change pas !
4- pourriez-vous svp me dire à quoi devrait ressembler une macro
"basique" de filtre sachant par exemple que les "titres" sont sur la
ligne 200 ? Faut-il dimensionner la plage de valeurs filtrées ou le
filtre s'effectue par défaut sur toutes les lignes inférieures à la
ligne de "titres" ?
Un grand merci d'avance pour vos lumières éventuelles.
JP
Voici un exemple vite fait... est-ce que tu trouves quelque chose qui
ne fonctionne pas ?
http://cjoint.com/?btwIuxX1CV
J'ai lu et relu ton code pour essayer de mieux comprendre ...
Je l'ai utilisé dans un cas simple, comme celui que tu proposes ici,
et je
suis tombé sur un os !
"Erreur d'exécution '1004' La méthode AutoFilter de la classe Range a
échoué" ! Grand moment de solitude ? Pas trouvé grand chose sur
Google ...
Au bout de 2 heures, j'ai tenté (sans trop y croire) une manip :
J'ai sélectionné ma ligne de titre et j'ai crée un Filtre depuis le
menu "Outils..." et là "miracle" le code marchait de nouveau !!! J'ai
fait ça
plus par hasard que par conviction ! Y-a-t'il une explication plus
rationnelle que la chance ?
A+ ?
JP
MichDenis wrote:
Un petit exemple :
Un filtre sur la colonne No 2 d'une plage définie
comme A1:Cx , x étant la dernière cellule de la colonne C
Tu adaptes le nom de la feuille de la procédure et le critère
"Louise".
Le triangle du filtre auto. devrait apparaître seulement sur la
colonne 2
Et un filtre automatique peut débuter sur la ligne de ton choix...
pas nécessairement à partir de la ligne 1
La colonne 2 de la plage contenait des prénoms dans mon exemple ...
'----------------------------
Sub test()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:C" & .Range("A65536").End(xlUp).Row)
End With
With Rg
For A = 1 To Rg.Columns.Count
.AutoFilter field:=A, visibleDropDown:úlse
Next
.AutoFilter field:=2, Criteria1:="Louise", visibleDropDown:=True
End With
End Sub
'----------------------------
"j-pascal" <nospam-j-pascal@free.fr> a écrit dans le message de news:
%23ynK3bnOHHA.4260@TK2MSFTNGP02.phx.gbl...
Bonjour,
J'ai essayé de faire un "filtre" en vba ... mais je me suis pour
l'instant limité à créer un bouton pour réinitialiser les listes ...
1- Comment peut-on supprimer les "petites flèches" sur les entêtes de
colonnes qu'on ne veut pas filtrer ?
2- Si ma ligne de "titre" (où figurent les rubriques) est situé à la
200ème ligne de ma feuille, cela pose-t-il un pb quelconque ?
3- Y-t-il un moyen de singulariser la colonne sur laquelle est
effectué le filtre ? J'avais imaginé une mise en forme conditionnelle
sur la cellule du titre concerné ... mais celle-ci ne change pas !
4- pourriez-vous svp me dire à quoi devrait ressembler une macro
"basique" de filtre sachant par exemple que les "titres" sont sur la
ligne 200 ? Faut-il dimensionner la plage de valeurs filtrées ou le
filtre s'effectue par défaut sur toutes les lignes inférieures à la
ligne de "titres" ?
Un grand merci d'avance pour vos lumières éventuelles.
JP
Voici un exemple vite fait... est-ce que tu trouves quelque chose qui
ne fonctionne pas ?
http://cjoint.com/?btwIuxX1CV
J'ai lu et relu ton code pour essayer de mieux comprendre ...
Je l'ai utilisé dans un cas simple, comme celui que tu proposes ici,
et je
suis tombé sur un os !
"Erreur d'exécution '1004' La méthode AutoFilter de la classe Range a
échoué" ! Grand moment de solitude ? Pas trouvé grand chose sur
Google ...
Au bout de 2 heures, j'ai tenté (sans trop y croire) une manip :
J'ai sélectionné ma ligne de titre et j'ai crée un Filtre depuis le
menu "Outils..." et là "miracle" le code marchait de nouveau !!! J'ai
fait ça
plus par hasard que par conviction ! Y-a-t'il une explication plus
rationnelle que la chance ?
A+ ?
JP
MichDenis wrote:Un petit exemple :
Un filtre sur la colonne No 2 d'une plage définie
comme A1:Cx , x étant la dernière cellule de la colonne C
Tu adaptes le nom de la feuille de la procédure et le critère
"Louise".
Le triangle du filtre auto. devrait apparaître seulement sur la
colonne 2
Et un filtre automatique peut débuter sur la ligne de ton choix...
pas nécessairement à partir de la ligne 1
La colonne 2 de la plage contenait des prénoms dans mon exemple ...
'----------------------------
Sub test()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:C" & .Range("A65536").End(xlUp).Row)
End With
With Rg
For A = 1 To Rg.Columns.Count
.AutoFilter field:=A, visibleDropDown:úlse
Next
.AutoFilter field:=2, Criteria1:="Louise", visibleDropDown:=True
End With
End Sub
'----------------------------
"j-pascal" a écrit dans le message de news:
%
Bonjour,
J'ai essayé de faire un "filtre" en vba ... mais je me suis pour
l'instant limité à créer un bouton pour réinitialiser les listes ...
1- Comment peut-on supprimer les "petites flèches" sur les entêtes de
colonnes qu'on ne veut pas filtrer ?
2- Si ma ligne de "titre" (où figurent les rubriques) est situé à la
200ème ligne de ma feuille, cela pose-t-il un pb quelconque ?
3- Y-t-il un moyen de singulariser la colonne sur laquelle est
effectué le filtre ? J'avais imaginé une mise en forme conditionnelle
sur la cellule du titre concerné ... mais celle-ci ne change pas !
4- pourriez-vous svp me dire à quoi devrait ressembler une macro
"basique" de filtre sachant par exemple que les "titres" sont sur la
ligne 200 ? Faut-il dimensionner la plage de valeurs filtrées ou le
filtre s'effectue par défaut sur toutes les lignes inférieures à la
ligne de "titres" ?
Un grand merci d'avance pour vos lumières éventuelles.
JP
Utilise ce code dans ton classeur :
La commande AutoFilter est comme la commande du bouton "mettre en
gras"
de la barre d'outils.
Feuil1.Range("A1").Autofilter - > place les boutons du filtre sur la
feuille
si tu exécutes à nouveau cette ligne de commande, les boutons du
filtre disparaisse.
Aussi faut-il s'assurer du statut du filtre sur la feuille avant
d'exécuter la macro et c'est ce que fait
cette ligne de code : If .AutoFilterMode = True Then Rg.AutoFilter
'--------------------------------
Sub Filtre()
Dim Rg As Range
Dim A As Integer
Dim valeur As String
Application.ScreenUpdating = False
valeur = Range("F1").Value
With Worksheets("Feuil1")
Set Rg = .Range("A1:E" & .Range("A65536").End(xlUp).Row)
If .AutoFilterMode = True Then Rg.AutoFilter
End With
With Rg
For A = 1 To Rg.Columns.Count
.AutoFilter field:=A, visibleDropDown:úlse
Next
.AutoFilter field:=3, Criteria1:=valeur, visibleDropDown:=True
End With
End Sub
'--------------------------------
Sub reset()
If Feuil1.FilterMode = True Then
Feuil1.Range("A1").AutoFilter
End If
End Sub
'--------------------------------
"j-pascal" a écrit dans le message de news:
%
Bonjour MichDenis,Voici un exemple vite fait... est-ce que tu trouves quelque chose qui
ne fonctionne pas ?
http://cjoint.com/?btwIuxX1CV
Non, non c'est parfait, tout comme l'était ton premier et précédent
fichier.
Si tu veux jeter un coup d'oeil sur mon fichier qui pose pb ... il
est là :
http://cjoint.com/?bvpmUfTaGj
(lorsqu'on lance la macro "bouton Filtre" il y a le fameux message de
débogage que je ne m'explique pas ! Ce qui est étonnant, c'est que si
je
sélectionne la première ligne du fichier et que je fais "Outils /
Filtre
Automatique" (deux fois car ça ne marche pas la première fois !), le
filtre
fonctionne en exécutant la macro et cette dernière ne génère plus le
message
d'erreur !)
A bientôt ... peut-être ?
JPJ'ai lu et relu ton code pour essayer de mieux comprendre ...
Je l'ai utilisé dans un cas simple, comme celui que tu proposes ici,
et je
suis tombé sur un os !
"Erreur d'exécution '1004' La méthode AutoFilter de la classe Range a
échoué" ! Grand moment de solitude ? Pas trouvé grand chose sur
Google ...
Au bout de 2 heures, j'ai tenté (sans trop y croire) une manip :
J'ai sélectionné ma ligne de titre et j'ai crée un Filtre depuis le
menu "Outils..." et là "miracle" le code marchait de nouveau !!! J'ai
fait ça
plus par hasard que par conviction ! Y-a-t'il une explication plus
rationnelle que la chance ?
A+ ?
JP
MichDenis wrote:Un petit exemple :
Un filtre sur la colonne No 2 d'une plage définie
comme A1:Cx , x étant la dernière cellule de la colonne C
Tu adaptes le nom de la feuille de la procédure et le critère
"Louise".
Le triangle du filtre auto. devrait apparaître seulement sur la
colonne 2
Et un filtre automatique peut débuter sur la ligne de ton choix...
pas nécessairement à partir de la ligne 1
La colonne 2 de la plage contenait des prénoms dans mon exemple ...
'----------------------------
Sub test()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:C" & .Range("A65536").End(xlUp).Row)
End With
With Rg
For A = 1 To Rg.Columns.Count
.AutoFilter field:=A, visibleDropDown:úlse
Next
.AutoFilter field:=2, Criteria1:="Louise", visibleDropDown:=True
End With
End Sub
'----------------------------
"j-pascal" a écrit dans le message de
news: %
Bonjour,
J'ai essayé de faire un "filtre" en vba ... mais je me suis pour
l'instant limité à créer un bouton pour réinitialiser les listes ...
1- Comment peut-on supprimer les "petites flèches" sur les entêtes
de colonnes qu'on ne veut pas filtrer ?
2- Si ma ligne de "titre" (où figurent les rubriques) est situé à la
200ème ligne de ma feuille, cela pose-t-il un pb quelconque ?
3- Y-t-il un moyen de singulariser la colonne sur laquelle est
effectué le filtre ? J'avais imaginé une mise en forme
conditionnelle sur la cellule du titre concerné ... mais celle-ci
ne change pas !
4- pourriez-vous svp me dire à quoi devrait ressembler une macro
"basique" de filtre sachant par exemple que les "titres" sont sur la
ligne 200 ? Faut-il dimensionner la plage de valeurs filtrées ou le
filtre s'effectue par défaut sur toutes les lignes inférieures à la
ligne de "titres" ?
Un grand merci d'avance pour vos lumières éventuelles.
JP
Utilise ce code dans ton classeur :
La commande AutoFilter est comme la commande du bouton "mettre en
gras"
de la barre d'outils.
Feuil1.Range("A1").Autofilter - > place les boutons du filtre sur la
feuille
si tu exécutes à nouveau cette ligne de commande, les boutons du
filtre disparaisse.
Aussi faut-il s'assurer du statut du filtre sur la feuille avant
d'exécuter la macro et c'est ce que fait
cette ligne de code : If .AutoFilterMode = True Then Rg.AutoFilter
'--------------------------------
Sub Filtre()
Dim Rg As Range
Dim A As Integer
Dim valeur As String
Application.ScreenUpdating = False
valeur = Range("F1").Value
With Worksheets("Feuil1")
Set Rg = .Range("A1:E" & .Range("A65536").End(xlUp).Row)
If .AutoFilterMode = True Then Rg.AutoFilter
End With
With Rg
For A = 1 To Rg.Columns.Count
.AutoFilter field:=A, visibleDropDown:úlse
Next
.AutoFilter field:=3, Criteria1:=valeur, visibleDropDown:=True
End With
End Sub
'--------------------------------
Sub reset()
If Feuil1.FilterMode = True Then
Feuil1.Range("A1").AutoFilter
End If
End Sub
'--------------------------------
"j-pascal" <nospam-j-pascal@free.fr> a écrit dans le message de news:
%23rVM9bWPHHA.4484@TK2MSFTNGP02.phx.gbl...
Bonjour MichDenis,
Voici un exemple vite fait... est-ce que tu trouves quelque chose qui
ne fonctionne pas ?
http://cjoint.com/?btwIuxX1CV
Non, non c'est parfait, tout comme l'était ton premier et précédent
fichier.
Si tu veux jeter un coup d'oeil sur mon fichier qui pose pb ... il
est là :
http://cjoint.com/?bvpmUfTaGj
(lorsqu'on lance la macro "bouton Filtre" il y a le fameux message de
débogage que je ne m'explique pas ! Ce qui est étonnant, c'est que si
je
sélectionne la première ligne du fichier et que je fais "Outils /
Filtre
Automatique" (deux fois car ça ne marche pas la première fois !), le
filtre
fonctionne en exécutant la macro et cette dernière ne génère plus le
message
d'erreur !)
A bientôt ... peut-être ?
JP
J'ai lu et relu ton code pour essayer de mieux comprendre ...
Je l'ai utilisé dans un cas simple, comme celui que tu proposes ici,
et je
suis tombé sur un os !
"Erreur d'exécution '1004' La méthode AutoFilter de la classe Range a
échoué" ! Grand moment de solitude ? Pas trouvé grand chose sur
Google ...
Au bout de 2 heures, j'ai tenté (sans trop y croire) une manip :
J'ai sélectionné ma ligne de titre et j'ai crée un Filtre depuis le
menu "Outils..." et là "miracle" le code marchait de nouveau !!! J'ai
fait ça
plus par hasard que par conviction ! Y-a-t'il une explication plus
rationnelle que la chance ?
A+ ?
JP
MichDenis wrote:
Un petit exemple :
Un filtre sur la colonne No 2 d'une plage définie
comme A1:Cx , x étant la dernière cellule de la colonne C
Tu adaptes le nom de la feuille de la procédure et le critère
"Louise".
Le triangle du filtre auto. devrait apparaître seulement sur la
colonne 2
Et un filtre automatique peut débuter sur la ligne de ton choix...
pas nécessairement à partir de la ligne 1
La colonne 2 de la plage contenait des prénoms dans mon exemple ...
'----------------------------
Sub test()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:C" & .Range("A65536").End(xlUp).Row)
End With
With Rg
For A = 1 To Rg.Columns.Count
.AutoFilter field:=A, visibleDropDown:úlse
Next
.AutoFilter field:=2, Criteria1:="Louise", visibleDropDown:=True
End With
End Sub
'----------------------------
"j-pascal" <nospam-j-pascal@free.fr> a écrit dans le message de
news: %23ynK3bnOHHA.4260@TK2MSFTNGP02.phx.gbl...
Bonjour,
J'ai essayé de faire un "filtre" en vba ... mais je me suis pour
l'instant limité à créer un bouton pour réinitialiser les listes ...
1- Comment peut-on supprimer les "petites flèches" sur les entêtes
de colonnes qu'on ne veut pas filtrer ?
2- Si ma ligne de "titre" (où figurent les rubriques) est situé à la
200ème ligne de ma feuille, cela pose-t-il un pb quelconque ?
3- Y-t-il un moyen de singulariser la colonne sur laquelle est
effectué le filtre ? J'avais imaginé une mise en forme
conditionnelle sur la cellule du titre concerné ... mais celle-ci
ne change pas !
4- pourriez-vous svp me dire à quoi devrait ressembler une macro
"basique" de filtre sachant par exemple que les "titres" sont sur la
ligne 200 ? Faut-il dimensionner la plage de valeurs filtrées ou le
filtre s'effectue par défaut sur toutes les lignes inférieures à la
ligne de "titres" ?
Un grand merci d'avance pour vos lumières éventuelles.
JP
Utilise ce code dans ton classeur :
La commande AutoFilter est comme la commande du bouton "mettre en
gras"
de la barre d'outils.
Feuil1.Range("A1").Autofilter - > place les boutons du filtre sur la
feuille
si tu exécutes à nouveau cette ligne de commande, les boutons du
filtre disparaisse.
Aussi faut-il s'assurer du statut du filtre sur la feuille avant
d'exécuter la macro et c'est ce que fait
cette ligne de code : If .AutoFilterMode = True Then Rg.AutoFilter
'--------------------------------
Sub Filtre()
Dim Rg As Range
Dim A As Integer
Dim valeur As String
Application.ScreenUpdating = False
valeur = Range("F1").Value
With Worksheets("Feuil1")
Set Rg = .Range("A1:E" & .Range("A65536").End(xlUp).Row)
If .AutoFilterMode = True Then Rg.AutoFilter
End With
With Rg
For A = 1 To Rg.Columns.Count
.AutoFilter field:=A, visibleDropDown:úlse
Next
.AutoFilter field:=3, Criteria1:=valeur, visibleDropDown:=True
End With
End Sub
'--------------------------------
Sub reset()
If Feuil1.FilterMode = True Then
Feuil1.Range("A1").AutoFilter
End If
End Sub
'--------------------------------
"j-pascal" a écrit dans le message de news:
%
Bonjour MichDenis,Voici un exemple vite fait... est-ce que tu trouves quelque chose qui
ne fonctionne pas ?
http://cjoint.com/?btwIuxX1CV
Non, non c'est parfait, tout comme l'était ton premier et précédent
fichier.
Si tu veux jeter un coup d'oeil sur mon fichier qui pose pb ... il
est là :
http://cjoint.com/?bvpmUfTaGj
(lorsqu'on lance la macro "bouton Filtre" il y a le fameux message de
débogage que je ne m'explique pas ! Ce qui est étonnant, c'est que si
je
sélectionne la première ligne du fichier et que je fais "Outils /
Filtre
Automatique" (deux fois car ça ne marche pas la première fois !), le
filtre
fonctionne en exécutant la macro et cette dernière ne génère plus le
message
d'erreur !)
A bientôt ... peut-être ?
JPJ'ai lu et relu ton code pour essayer de mieux comprendre ...
Je l'ai utilisé dans un cas simple, comme celui que tu proposes ici,
et je
suis tombé sur un os !
"Erreur d'exécution '1004' La méthode AutoFilter de la classe Range a
échoué" ! Grand moment de solitude ? Pas trouvé grand chose sur
Google ...
Au bout de 2 heures, j'ai tenté (sans trop y croire) une manip :
J'ai sélectionné ma ligne de titre et j'ai crée un Filtre depuis le
menu "Outils..." et là "miracle" le code marchait de nouveau !!! J'ai
fait ça
plus par hasard que par conviction ! Y-a-t'il une explication plus
rationnelle que la chance ?
A+ ?
JP
MichDenis wrote:Un petit exemple :
Un filtre sur la colonne No 2 d'une plage définie
comme A1:Cx , x étant la dernière cellule de la colonne C
Tu adaptes le nom de la feuille de la procédure et le critère
"Louise".
Le triangle du filtre auto. devrait apparaître seulement sur la
colonne 2
Et un filtre automatique peut débuter sur la ligne de ton choix...
pas nécessairement à partir de la ligne 1
La colonne 2 de la plage contenait des prénoms dans mon exemple ...
'----------------------------
Sub test()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:C" & .Range("A65536").End(xlUp).Row)
End With
With Rg
For A = 1 To Rg.Columns.Count
.AutoFilter field:=A, visibleDropDown:úlse
Next
.AutoFilter field:=2, Criteria1:="Louise", visibleDropDown:=True
End With
End Sub
'----------------------------
"j-pascal" a écrit dans le message de
news: %
Bonjour,
J'ai essayé de faire un "filtre" en vba ... mais je me suis pour
l'instant limité à créer un bouton pour réinitialiser les listes ...
1- Comment peut-on supprimer les "petites flèches" sur les entêtes
de colonnes qu'on ne veut pas filtrer ?
2- Si ma ligne de "titre" (où figurent les rubriques) est situé à la
200ème ligne de ma feuille, cela pose-t-il un pb quelconque ?
3- Y-t-il un moyen de singulariser la colonne sur laquelle est
effectué le filtre ? J'avais imaginé une mise en forme
conditionnelle sur la cellule du titre concerné ... mais celle-ci
ne change pas !
4- pourriez-vous svp me dire à quoi devrait ressembler une macro
"basique" de filtre sachant par exemple que les "titres" sont sur la
ligne 200 ? Faut-il dimensionner la plage de valeurs filtrées ou le
filtre s'effectue par défaut sur toutes les lignes inférieures à la
ligne de "titres" ?
Un grand merci d'avance pour vos lumières éventuelles.
JP