Transposer des données suivant paramètre

Bonjour à tou(te)s,

J'ai parcouru un peu le forum, je n'ai pas trouvé de réponse précise à mon problème. Je précise dès le début que je ne suis pas un pro du VBA, mais que je suis capable d'adapter une macro. Je préfère donc, si possible bien-sûr, une solution par formules...

Contexte : j'ai une base de données de produits, composés de plusieurs articles. Les produits sont éclatés en colonne pour plusieurs informations (taille, poids, qté, prix de vente, etc.), mais également en ligne pour chaque article composant le produit. La clé commune pour les lignes par produit est la 1ère colonne contenant la référence de commande. Dès que le produit diffère, le numéro de commande également.

Je souhaite transposer la liste des articles, avec un article par colonne, puis supprimer ensuite les lignes communes, pour n'avoir plus qu'une seule ligne par commande.

J'avoue complètement bloquer, j'ai en-tête des formules comme DECALER, mais impossible de voir la solution...

J'en appelle donc à vos connaissances et à votre expérience!

Je joins un exemple de base de données (colonnes grises, dont la colonne à transposer en jaune), et le résultat souhaité pour la 1ère commande (colonnes bleues).

Sachant que la liste des colonnes bleues n'est pas forcément exhaustive, une solution me permettant déjà d'avoir tous les articles en colonne, même s'ils sont mélangés pourraient me convenir parfaitement!

EDIT : je reposte, car en allant plus en détail dans le forum, j'ai trouvé un début de solution intermédiaire (voir onglet Feuil3). J'ai tous mes articles en une seule ligne. Le soucis qui persiste, est que je me retrouve avec des types articles complètement mélangés pour chaque colonne...

J'espère avoir été assez clair..

Merci d'avance pour votre aide!

Olivier27

9exclptq1-v2.xlsx (15.60 Ko)

bonjour

ce qui ne va pas, c'est que tu devrais avoir plusieurs fois la même réf dans ton tableau, car tu commandes cette ref certainement plusieurs fois dans l'année.

ceci étant dit, si tu veux gérer des articles, des composants d'articles, des commandes, des stocks et des achats, meiux vaut accheter CIEL, EBP ou autre. PA si cher que ça. Ce genre de gestion co existe aussi gratuitement.

Si vraiment tu veux programmer, passe sous Access ou autre SGBD

Bonjour jmd, merci pour ta réponse, mais en fait il ne s'agit pas d'une base d'achats, mais d'une base de vente.

Ainsi, chaque référence de commande, correspond à une commande d'un client, qui est unique à chaque commande. Donc dans mon cas, aucune interaction avec les modules de gestion des stocks, puisque la décrémentation se fait lors de la production et non lors de la vente.

Mon but est uniquement de retravailler cette base de vente avec le détail de chaque commande sur une seule ligne pour faire des TCD et autres liens avec la base client.

Cette base est une extraction d'un progiciel via script SQL, dont je n'ai pas la maîtrise, car je n'ai pas accès à cette base en dur. La personne m'effectuant les extractions, ne peut pas me donner un meilleur rendu que celui que j'ai montré en exemple malheureusement, le progiciel est assez fermé.

Mon soucis persiste donc...

re

alors je ne càmprends pas ton tableau

où sont les articles et où sont les composants ?

à quoi sert le n° de commande ?

pourquoi "mettre les articles en ligne" ?

re jmd,

Le fichier donne les informations suivantes : une réf de commande = 1 produit = 1 composition de plusieurs articles.

Et chaque article est rattaché à un type d'article. Et plusieurs articles du même type peuvent entrer dans la composition d'un produit (j'ai des produits pouvant être composés de 4 façonnages différents...)

J'ai besoin d'avoir en colonne, idéalement comme présenté dans l'onglet Feuil2, tous les articles, par type d'article, sachant qu'un produit peut être composé de plusieurs articles du même type. Basiquement, j'ai ce qui est ci-dessous au départ :

Réf Cde Type article Désignation article

10001 A 201

10001 A 627

10001 B 456

10001 C 987

Et je souhaite avoir ceci :

Réf Cde Type article A Type article A bis Type article B Type article C

10001 201 627 456 987

J'ai besoin d'avoir ces données en une seule ligne par référence de commande, car cette base va être retraitée de plusieurs manières, dont l'analyse de la composition de chaque commande, impossible à faire si ma composition est mélangée par ligne ET par colonne tel qu'actuellement...

La seule chose que j'ai réussi à faire pour le moment, est indiqué dans l'onglet Feuil3, j'ai réussi à transposer tous mes articles dans des colonnes, mais ils sont mélangés par type et j'ai toujours autant de lignes par référence de commande que d'articles composant chaque référence de commande.

Pour le mélange par type je m'explique : dans ma colonne "P" nommée Article 1 pour le moment, je me retrouve avec des articles étant rattachés au Type article = Façonnage mais aussi des articles étant rattachés au type article = croisillon...

J'espère être le plus clair possible, la base de données est assez complexe...

cdt

[quote="Olivier27"

Réf Cde Type article Désignation article

10001 A 201

10001 A 627

10001 B 456

10001 C 987

cdt[/quote]

je pense avoir compris

Excel ne dispose pas d'outil direct pour répondre à ta question. Selon c'est parce que le tableau ci-dessus est une vraie base de données, et que pour exploiter son contenu, il ne faut pas en modifier la forme.

quel genre d'exploitation veux-tu faire ?

Bonjour jmd,

L'exploitation de cette base a pour but d'analyser au global, puis par client, les compositions, détaillées. Les analyses seront aussi amenées à être faite par type article etc.

Il me faut donc tous les articles bien rangés par colonne de type article comme précisé précédemment...

Au stade de travail sur mon fichier, il me faut en fait réussir à caler une RECHERCHEH suivant l’occurrence des types article. Je fouille sur le forum, si je ne trouve pas je posterai un sujet différent, et ton aide est bien entendu toujours la bienvenue au cas où tu aurais une solution globale m'évitant tout un tas de formules...

Cdt

re

bizarre, car je fais souvent ce type d'analyse et on utilise un TCD (qui crée tout seul la ventilation en colonnes). Pas besoin de ventiler par des méthodes complexes.

comme ceci

Re jmd,

Merci pour ton retour, mais je ne peux pas utiliser à ce stade un TCD, il ne peut venir que dans un second temps.

Tant que je n'ai pas toutes les informations d'une commande, sur une ligne avec toutes les infos éclatées en colonne, je ne pourrai rien traiter par la suite...

Afin de rendre plus précis mon problème, je joins un nouvel exemple, qui reprend la structure de ma base de données, sans les informations confidentielles, avec les colonnes inutiles à mon problème qui sont masquées. Elles peuvent être affichées pour que vous ayez une idée du fichier global.

En jaune les colonnes que je souhaite traiter, en bleu les colonnes que j'ai créées et que je souhaite alimenter avec les désignations d'articles suivant le type article indiqué sur chaque en tête de colonnes bleues, et bien sûr en prenant compte de l'occurrence, pour avoir chaque désignation d'articles au final, bien rangé par type article.

J'ai pré rempli quelques références de commande à la main pour que vous puissiez voir le rendu exact de ce que je souhaite.

Merci encore pour le temps que vous passez sur mon fichier...

Cdt

8exclptq1-v3.xlsx (16.86 Ko)
Rechercher des sujets similaires à "transposer donnees suivant parametre"