Filtre niveaux de titres

Bonjour à tous.

Je vous écris car je cherche des solutions depuis longtemps et je n'arrive pas à mes fins !

J'ai un client qui m'envoie plusieurs fichiers comprenant plus de 1000 lignes, et dans lequel je souhaiterais créer un filtre comprenant plusieurs conditions :

- Lorsque la quantité est non nulle, afficher 1 dans la colonne "Filtre" de la même ligne, ce que je fais déjà avec une formule =si

- Afficher 1 dans les niveaux de titres directement supérieurs afin de pouvoir les afficher lors du filtrage. Par exemple, si j'ai une quantité dans un niveau de titre 3, mettre 1 dans la ligne du titre 2 directement au-dessus, puis 1 dans la ligne du titre 1 directement au-dessus afin de voir le titre de niveau 1, puis 2, puis 3.

Dans la pièce-jointe, j'ai mis en exemple la ligne 17 de "niveau de titre" = 3 qui contient une quantité non nulle, et je souhaiterais alors avoir la valeur 1 dans la colonne "Filtre" pour le titre de niveau 2 directement au-dessus, puis pour le titre de niveau 1 aussi.

Problématique pouvant être liée à ma question précédente, je n'ai pas de colonne avec les codes uniques de chaque ligne. J'ai une partie du code dans la colonne "N°" et pour les sous-rubriques, les sous-titres sont indiquées dans "Désignation", si vous aviez un moyen de créer une automatisation de ce code unique. J'ai surligné cette partie en orange dans la pièce-jointe.

En vous remerciant d'avance et en

vous souhaitant une belle journée

Florent

Bonjour,

Proposition en VBA, cliquez sur le bouton "Traitement" en haut de la feuille.

Ce que fait la macro:

-1) création des codes dans la colonne N°

-2) Marquage d'un N° dans la colonne J: "Filtre" et dans la colonne K: "Niveaux inférieurs" (les formules pour les titres sont inutiles)

Afin de distinguer les résultats, Les numéros affectés à ces 2 colonnes s'incrémenteront de 1 si plusieurs codes différents présentent des quantités >0.

Cdlt

Bonjour Arturo et merci beaucoup pour ce retour !

C'est parfait pour les codes uniques !

Concernant le filtre, le code VBA met 1 lorsqu'il y a une quantité,

par exemple sur le code unique 59.c.3 du fichier que tu m'as retransmis,

je voulais savoir si tu avais une solution pour mettre 1 aussi au code unique 59.c et 59 ?

Le but étant d'afficher l'arborescence (59 => 59.c => 59.3) lorsque le filtre est appliqué.

Merci beaucoup déjà pour la création des codes uniques !

Belle journée à toi

Ok, j'avais crû comprendre qu'il fallait mettre le 1 dans la colonne à droite de celle du"Filtre".

Donc voici la modification, tous les 1 sont dans la colonne "Filtre".

Merci Arturo !

Dernier détail concernant le filtre, il marche bien lorsqu'il n'y a qu'une valeur de renseignée (par exemple en 59.c.3 qui affiche 59.c et 59),

par contre, si je mets une quantité dans 59.b.4, il ne met pas 1 dans 59.b.4, ni dans 59.b.

Merci beaucoup pour le temps consacré à mon fichier.

Cordialement

Problème posé de façon insuffisante dès le début, il faut plusieurs cas de figure susceptibles d'être rencontrés pour ne pas passer à côté.

Correctif:

Merci beaucoup Arturo !

C'est exactement ce que je cherchais.

Bonne journée

Rechercher des sujets similaires à "filtre niveaux titres"