XL 2019 Numéro d'ordre automatique

vilcoyotte90

XLDnaute Nouveau
Bonjour à tous,

Je cherche à donner un numéro de position ou de hiérarchisation à chaque ligne via une formule en colonne C.

Mon tableau ci-dessous (image) est une version simplifiée, avec peu de lignes et colonnes et représente ce que je cherche à obtenir (La colonne C est rentrée en manuel).

Capture2.PNG


La logique est la suivante:
Chaque ligne (produit) a une référence (colonne A)
Chaque produit peut-être soit:
- un produit d'entête ("Ref" = "Ref prod variable") donc la valeur de la position dans la colonne C doit être 1
- une variation d'un produit d'entête: MOT0000146 est une variation de MOT0000579, MOT0000581 est une variation de MOT0000579

ces variations doivent avoir chacune une valeur de position unique dans l'ensemble des variations d'un produit d'entête, commençant à 2, jusqu'à X (nombre de variations)

Dans la liste, une variation peut se situer avant un produit d'entête (MOT0000146)

J'ai bien pensé à NB.Si mais je sèche pour éviter le doublon de numéro unique lors d'un saut 😭

=SI($A2=$B2;1;NB.SI($B$2:$B2;$B2))
=SI($A2=$B2;1;NB.SI($B$2:$B2;$B2)+1)

Merci d'avance de votre aide
 

Pièces jointes

  • Classeur1.xlsx
    12.7 KB · Affichages: 4
Dernière édition:

vilcoyotte90

XLDnaute Nouveau
Je me réponds à moi même:

La formule (Matricielle, validée Ctrl+Maj+Entrée) est la suivante:

{=SI($A2=$B2;1;SI(SIERREUR(EQUIV(B2&B2;($A$2:A2&$B$2:B2);0);"Faux")="Faux";NB.SI($B$2:$B2;$B2)+1;NB.SI($B$2:$B2;$B2)))}

Après avoir vérifié si "Ref" = "Ref prod variable" de la ligne est faux (sinon =1), il faut faire une recherche d'antériorité de "Ref" = "Ref prod variable" dans les lignes au dessus avec SIERREUR et EQUIV, si c'est faux, on ajoute 1 au résultat, si vrai, c'est juste le nombre

J'ai par contre une question qui découle de ce genre de formule utilisée dans un tableau:

Comment écrit-on les plages B$2:$B2;$B2 qui vont évoluer avec le glisser copier en références de tableau?

Merci
 

Pièces jointes

  • Classeur1.xlsx
    13.1 KB · Affichages: 3

Discussions similaires

Réponses
13
Affichages
562

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
314 708
Messages
2 112 090
Membres
111 416
dernier inscrit
philipperoy83