Excel : Filtre auto et ligne cachée [Résolu/Fermé]

Signaler
Messages postés
744
Date d'inscription
jeudi 17 mai 2007
Statut
Membre
Dernière intervention
6 juin 2020
-
Messages postés
1823
Date d'inscription
vendredi 5 septembre 2008
Statut
Contributeur
Dernière intervention
24 avril 2020
-
Bonjour,
dans un tableau Excel j'ai une ligne cachée en fin de données nécessaire à la fonction d'insertion de ligne (afin que la génération du TCD prenne en compte ces insertions). Je voudrais ajouter sur une colonne un filtre auto. Afin que ce filtre intègre les lignes insérées à la fin des données je dois mettre la ligne cachée dans la borne maxi du filtre.
Le problème :
Lorsque j'utilise le filtre la ligne cachée devient visible. Ai-je une solution ? Quelqu'un peut-il m'aider ?
Merci d'avance
Alain

18 réponses

Messages postés
8700
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 127
Bonjour,
Ca dépend de ce que contient ta ligne cachée et du contenu de la colonne.
Voir avec filtre personnaliser et les *
A+
Messages postés
744
Date d'inscription
jeudi 17 mai 2007
Statut
Membre
Dernière intervention
6 juin 2020
80
Bonjour Lermite222,
la colonne doit contenir, sur certaines lignes un code (Ex. "Rem1009") sinon elle est vide. Quant à la ligne cachée elle est vide.
Merci
Alain
Messages postés
8700
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 127
Désolé, je ne comprend pas ton problème.
Si tu sélectionne "Rem1009" il n'aurra que la/les lignes contenant le filtre et si la ligne cachée est visible, en quoi ça gène puisqu'elle est vide ??
Messages postés
744
Date d'inscription
jeudi 17 mai 2007
Statut
Membre
Dernière intervention
6 juin 2020
80
Re,
le problème est que ce tableau est destiné à une dizaine de personnes et que cette dernière ligne doit rester vide (c'est pour cette raison qu'elle est cachée). Elle n'est utile que pour le TCD généré à partir de cette feuille. Si cette ligne vierge n'existe pas le TCD ne prend pas en compte les lignes générées en fin de données.
Si tu as besoin je peux te joindre mon tableau.
Alain
Messages postés
8700
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 127
Eventuellement, tu peu joindre ton classeur (en xls) je ne suis pas sur le 2007
Mais je ne garanti pas une solution
Messages postés
744
Date d'inscription
jeudi 17 mai 2007
Statut
Membre
Dernière intervention
6 juin 2020
80
Dans ce classeur, la feuille DATA est la feuille des saisie. Comme tu peux le constater le filtre ne prend pas en compte les dernières lignes générées en fin de tableau.
https://www.cjoint.com/?cnpCQUn6sY

En creusant un peu je me suis aperçu que c'est la ligne 19 qui pose problème car si tu tapes un "Espace" dans la cellule O19, ça fonctionne. Par contre je n'ai pas trouvé pourquoi.
Alain
Messages postés
14934
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 239
bonjour

Pour mettre le filtre sur ta colonne, essaies de sélectionner l'ensemble de la colonne que tu veux filtrer et tu verras que cela fonctionneras beaucoup mieux car ta colonne, à part et avec des cellules vides, perturbe la fonction standard d'excel
Messages postés
744
Date d'inscription
jeudi 17 mai 2007
Statut
Membre
Dernière intervention
6 juin 2020
80
Bonjour Gbinforme,
si je sélectionne l'ensemble de la colonne puis-je mettre la flèche du filtre dans la cellule "Titre" ?
Et dans ce cas le filtre va me réafficher la ligne cachée !!!

Merci
Alain
Messages postés
8700
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 127
Bonjour GB,
En tout cas, ce n'est pas des filtres, c'est pas plutôt des validations ?
Sais pas connaît pas bien ça ?
Messages postés
744
Date d'inscription
jeudi 17 mai 2007
Statut
Membre
Dernière intervention
6 juin 2020
80
Re,
ne pourrais-je pas initialiser cette colonne avec filtre à "espace" ou autres (mais pas à "rien" ?
Qu'en pensez-vous ?
Alain
Messages postés
52720
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
24 novembre 2020
14 659
Bonjour, alainjjb.

Je crois utile de te rappeler deux principes fondamentaux à respecter dans toute base de données sous Excel :
PAS DE LIGNE VIDE,
PAS DE COLONNE VIDE.

Si l'un des ces principes est bafoué, tu risques d'avoir des résultats inexacts dans tes tris et tes filtres.

Ainsi ta colonne N vide est déjà une anomalie, et il n'est pas nécessaire que ta ligne 25 soit vide et masquée ; il vaudrait mieux la laisser affichée et y saisir une consigne du style "Ne rien saisir dans cette ligne . Merci !"
Messages postés
1823
Date d'inscription
vendredi 5 septembre 2008
Statut
Contributeur
Dernière intervention
24 avril 2020
588
Bonjour à tous,

Je m'immisce dans la discussion car j'ai regardé le fichier. Il me semble que le filtre auto ne fonctionne pas car il a été créé après sélection des cellules O8 à O18 (ce qui explique peut- être le pourquoi du O19).

J'ai supprimé le filtre Auto puis recréé en ayant sélectionné avant les cellules de O8 à O24 et j'ai bien l'impression que ça fonctionne comme le souhaite alainjjb ...

A+
Messages postés
1823
Date d'inscription
vendredi 5 septembre 2008
Statut
Contributeur
Dernière intervention
24 avril 2020
588
Re

J'ajoute un complément d'info. J'avais bien diagnostiqué le problème mais pour le résoudre correctement, il faut recréer le filtre dans la macro "InsererLigne" juste avant la fin, il faut ajouter le code suivant :
Selection.AutoFilter
Range(Cells(8, 15), Cells(ligne, 15)).Select
Selection.AutoFilter


voilà il faut que le filtre existe le 1° selection.autofilter le supprime et le suivant le crée avec la bonne plage.
dans la macro "Inser_Ligne_Curseur" ce n'est pas utile...

A+
LE MIEUX C'EST DE METTRE TA LIGNE CACHEE SUR LA PREMIERE LIGNE ET POSITIONNER TON FILTRE COLONNE SUR LA CELLULE SITUE EN DESSOUS
Messages postés
744
Date d'inscription
jeudi 17 mai 2007
Statut
Membre
Dernière intervention
6 juin 2020
80
Re,
Merci pour ttes ces réponses.

Raymond :"pas de ligne et de colonne VIDE" inclus aussi l'espace ? Comment contrôler le fait que l'utilisateur n'utilise pas le "Clic droit - effacer le contenu" ?
- La dernière ligne est prise en compte par un TCD qui interdit de la valoriser.

Pilas31 : Le filtre a été créé avec les lignes existantes au moment de sa création. Ensuite de nvelles lignes ont été insérées soit à la fin du tableau soit au milieu. Le problème est, comme le dit nos experts des lignes non valorisées avec lesquelles le résultat parait aléatoire.

Astérix : La ligne cachée est obligatoirement à la fin car elle permet au TCD de prendre en compte les lignes insérées en fin de tableau.

A TOUS : Je n'ai donc aucun moyen de filtrer cette colonne qui contiendra obligatoirement des cellules non renseignées ?

En attendant Merci.

Alain
Messages postés
1823
Date d'inscription
vendredi 5 septembre 2008
Statut
Contributeur
Dernière intervention
24 avril 2020
588
Bonsoir,

Regarde mon dernier post, je pense que c'est une solution...

Dis moi...

A+
Messages postés
52720
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
24 novembre 2020
14 659
Raymond :"pas de ligne et de colonne VIDE" inclus aussi l'espace ? Comment contrôler le fait que l'utilisateur n'utilise pas le "Clic droit - effacer le contenu" ?

L'espace est un caractère ; une cellule contenant un espace n'est pas vide.
Si le message affiché ne te paraît pas assez dissuasif, remplit ta ligne 25 avec une Validation de données , un Message de saisie et une Alerte d'erreur.
Messages postés
744
Date d'inscription
jeudi 17 mai 2007
Statut
Membre
Dernière intervention
6 juin 2020
80
Re,
Peut-on tester par macro si le filtre existe ?
Alain
Messages postés
1823
Date d'inscription
vendredi 5 septembre 2008
Statut
Contributeur
Dernière intervention
24 avril 2020
588
Re

Voilà j'ai déposé le fichier avec la macro modifiée :

http://www.cijoint.fr/cjlink.php?file=cj200902/cijGlBFIR9.xls

Je pense que cel résoud le problème...
Messages postés
1823
Date d'inscription
vendredi 5 septembre 2008
Statut
Contributeur
Dernière intervention
24 avril 2020
588
Oui on peut tester si le filtre est actif :
il faut tester si Sheets("DATA").AutoFilterMode est vrai ou faux
Messages postés
744
Date d'inscription
jeudi 17 mai 2007
Statut
Membre
Dernière intervention
6 juin 2020
80
Pilas31,
j'ai mis en place ta solution conditionnée par la présence ou non du filtre dans la macro d'insertion et dans celle d'init. Ça a l'air de fonctionner. Ce soir ça suffit, je vais faire un test approfondi demain.

Bonne nuit à tous et merci de votre aide
Alain
Messages postés
1823
Date d'inscription
vendredi 5 septembre 2008
Statut
Contributeur
Dernière intervention
24 avril 2020
588
Content d'avoir pu aider.

Demain je ne serais pas dispo mais je suis confiant, je pense que c'est la solution.

Bonne nuit et bonne continuation.