Excel : Filtre auto et ligne cachée

Résolu
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
Configuration: Windows XP
Firefox 3.0.1

18 réponses

  1. Contributeur
    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+
    0
    1. 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
      0
      1. Contributeur
        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 ??
        0
        1. 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
          0
          1. Contributeur
            Eventuellement, tu peu joindre ton classeur (en xls) je ne suis pas sur le 2007
            Mais je ne garanti pas une solution
            0
            1. 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
              0
              1. Contributeur
                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
                0
                1. 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
                  0
                  1. Contributeur
                    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 ?
                    0
                    1. Re,
                      ne pourrais-je pas initialiser cette colonne avec filtre à "espace" ou autres (mais pas à "rien" ?
                      Qu'en pensez-vous ?
                      Alain
                      0
                      1. Contributeur
                        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 !"
                        0
                        1. Contributeur
                          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+
                          0
                          1. Contributeur
                            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+
                            0
                        2. LE MIEUX C'EST DE METTRE TA LIGNE CACHEE SUR LA PREMIERE LIGNE ET POSITIONNER TON FILTRE COLONNE SUR LA CELLULE SITUE EN DESSOUS
                          0
                          1. 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
                            0
                            1. Contributeur
                              Bonsoir,

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

                              Dis moi...

                              A+
                              0
                            2. Contributeur
                              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.
                              0
                          2. Re,
                            Peut-on tester par macro si le filtre existe ?
                            Alain
                            0
                            1. Contributeur
                              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...
                              0
                              1. Contributeur
                                Oui on peut tester si le filtre est actif :
                                il faut tester si Sheets("DATA").AutoFilterMode est vrai ou faux
                                0
                                1. 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
                                  0
                                  1. Contributeur
                                    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.
                                    0