Autoincrémenter une liste désordonnée + Sélection multiple

Bonjour,

Je suis confronté à un nouveau casse-tête Excel.

Je dispose d'une liste d'articles dans un tableau.

Ces articles doivent être numérotés.

Un critère permet de les diviser en deux catégories. Si le code article commence par 1, il fait partie de la 1ère, sinon, de la 2ème.

(voir fichier exemple joint)

J'aimerais pouvoir faire deux choses avec cette liste :

La 1ère, c'est incrémenter automatiquement le numéro de l'article lorsque j'ajoute une ligne en bout de tableau (lorsque j'ajoute un code article en fait), et ce peu importe l'ordre dans lequel mes articles se trouvent. Le numéro de l'article doit rester lié à son code. Ni la formule LIGNE() ni MAX() ne semble convenir.

Ensuite, j'aimerais pouvoir établir un tableau qui reprend tous les articles de la liste commençant par "1" (et donc dont le flag = 1) sur une autre feuille. Celui-ci doit se mettre à jour si un nouvel article est ajouté à la liste. J'aimerais pouvoir utiliser la fonction SI() en lui indiquant que "si le flag = 1, alors prend le code article, sinon saute à la ligne suivante et retente le test." La formule RECHERCHEV() ne renvoie que le 1er résultat.

Si vous avez une solution (si possible sans macro), je vous serais reconnaissant.

18exemple.xlsx (12.99 Ko)

Bonjour,

pour la numérotation il va falloir faire un choix.

Par formule mais interdit de trier, sinon ça ne peut être qu'en vba.

Pour le tableau un simple TCD (tableau croisé dynamique) devrait faire l'affaire.

eric

Finalement j'ai trouvé une alternative à la numérotation des articles. Je les numérote tout simplement ailleurs.

Concernant la sélection sur le critère "flag" ; sur ton conseil, j'ai utilisé un TCD que j'actualise lorsque j'ajoute un article.

Seulement il y a un hic. J'ai volontairement simplifié le problème dans mon exemple. Mais il y a d'autres données qui interviennent et qui ne sont pas dans ma liste de départ, qu'on va chercher dans un tableau reprenant des données extraites d'une DB grâce à Microsoft Query. Celles-ci doivent se retrouver dans mon tableau "TRAITEMENT" en regard de l'article concerné. (voir second exemple)

Le TCD et le tableau étant séparés, lorsqu'un nouvel article arrive dans le TCD, le tableau ne se met pas à jour. La solution que j'ai trouvé consiste à encapsuler mes formules du tableau dans un SIERREUR(...;"") et d'étirer mon tableau. Ainsi, lorsque mon tableau tente une recherche sur un champ du TCD qui n'existe pas, rien ne s'affiche, et lorsque le TCD s'étire, le résultat de la formule s'affiche.

N'y a-t-il pas de moyen plus "esthétique" d'ajuster automatiquement la taille d'un tableau en fonction du nombre de ligne d'un TCD ?

13exemple.xlsx (17.35 Ko)

Par formule pas beaucoup solution. Elles seront toutes équivalentes à sierreur()

eric

D'accord. Je me lancerai dans l'étude du VBA un jour, promis XD

Pour l'heure, le résultat que j'ai est convenable. Je vais en rester là.

Merci pour ton aide eriiic.

bonjour

la fonction est matricielle

18catab.xlsx (13.32 Ko)

cordialement

Rechercher des sujets similaires à "autoincrementer liste desordonnee selection multiple"