Transformer un tableau de données

Wizzy

XLDnaute Nouveau
Bonjour à tous!

Je bidouille sur excel depuis plusieurs années mais majoritairement des formules mathématiques dans le cadre pro ou pour grosbilliser sur un RPG mais là j'avoue que je sèche complètement... Cela fait environ 2 heures que je cherche sur internet et plus précisément sur ce forum pour "transformer" un tableau de données.

Pour faire simple, j'ai crée et référencé les articles (format gencod) de mon entreprise sous la forme de feuille1 et feuille2. Aujourd'hui un client me demande de lui diffuser ces codes avec son format de tableur excel. J'ai à peu près 4000 articles c'est clairement impossible de tout retaper à la main.

1) Ça serait donc super sympa de votre part de m'expliquer comment à partir du gencod (que je renseigne à grands coups de c/c) je peux appeler les données d'un autre tableau (j'ai crée un fichier excel intermédiaire pour pas me faire chier avec différents fichiers).
J'ai essayé plein de trucs qui n'ont pas marché, je pense que ça doit se faire avec INDEX et EQUIV mais je n'y arrive pas...

2) Pour combiner un nom à partir de plusieurs cellules j'ai trouvé CONCATENER ou &. Par contre comment utiliser le nom d'une feuille?

3) Et je n'ai pas trouvé pour séparer un texte : "hauteur x largeur" (étant des nombres à 2 ou 3 chiffres) et les mettre dans 2 cellules séparées.

Merci à tous ceux qui s'intéresseront à mon cas.
C'est surement pas très clair, j'ai essayé de faire un excel test pour vous expliquer au mieux.
 

Pièces jointes

  • Tableau excel test.xlsx
    11.4 KB · Affichages: 35

Wizzy

XLDnaute Nouveau
Re : Transformer un tableau de données

Concernant le point 1)

Je pense que le problème dans ma formule INDEX c'est la partie EQUIV.
Dans le fichier test joint, quand j'essaye d'avoir la position verticale d'une référence dans mon tableau originel ça ne marche pas.
J'ai tapé ça dans la feuille Nouveau : =EQUIV(I11;Feuille1!D3:H7;0) et ça me marque #N/A. La fonctionne EQUIV ne marcherait pas avec un tableau à plusieurs colonnes?
 

thebenoit59

XLDnaute Accro
Re : Transformer un tableau de données

Avec près de 4000 références, je pense que l'utilisation du VBA sera plus approprié pour traiter ton problème.

Pour ne pas travailler pour rien, peux-tu montrer à quoi ressemble ton classeur intermédiaire ?
Combien de feuilles ? Souhaites-tu un traitement de toutes les références ou seulement celles que tu noteras dans la colonne B ?
 

Dugenou

XLDnaute Barbatruc
Re : Transformer un tableau de données

Bonjour,
un essai en pj avec sommeprod et ensuite du equiv et index pour trouver ligne et colonne
j'ai éliminé les cellules fusionnées
des formules texte pour les h, l et titre
on considère que chaque code n'est présent qu'une seule fois
on considère que si on ne le trouve pas en feuille 1 il est obligatoirement en feuille 2

une feuille avec calcul développé dans 4 colonnes supplémentaires, une autre avec 1 seule colonne supplémentaire et calculs regroupés. Cette dernière colonne sup peut aussi être supprimée mais la formule deviendrait particulièrement longue.

A tester pour savoir si les temps de calculs sur 4000 références ne deviennent pas trop longs
 

Pièces jointes

  • wizzy.xlsx
    23.6 KB · Affichages: 27

Wizzy

XLDnaute Nouveau
Re : Transformer un tableau de données

Avec près de 4000 références, je pense que l'utilisation du VBA sera plus approprié pour traiter ton problème.

Pour ne pas travailler pour rien, peux-tu montrer à quoi ressemble ton classeur intermédiaire ?
Combien de feuilles ? Souhaites-tu un traitement de toutes les références ou seulement celles que tu noteras dans la colonne B ?

Merci de ta réponse.
Je ne voulais pas trop utiliser le VBA puisque mes connaissances sont extrêmement limitées dans ce domaine... A part créer des boutons simples et des listes déroulantes conditionnelles je ne sais rien faire d'autre dans le menu dev.

Je joins le classeur intermédiaire :
- La feuille "Final" reprend simplement l'agencement du tableau de mon client pour qu'à la fin je n'ai qu'un simple c/c à faire.
- Les autres onglets sont simplement des condensés de mon catalogue sans les formules et la mise en forme.

Comme il y a d'autres informations à renseigner dans le tableau et qu'aucune erreur ne peut être faite, je penche plutôt pour l'option renseigner moi-même la colonne GTIN. Ça me permettra d'avancer et de vérifier au fur et à mesure.

Qu'en penses-tu?

Merci encore
 
Dernière modification par un modérateur:

Wizzy

XLDnaute Nouveau
Re : Transformer un tableau de données

Bonjour,
un essai en pj avec sommeprod et ensuite du equiv et index pour trouver ligne et colonne
j'ai éliminé les cellules fusionnées
des formules texte pour les h, l et titre
on considère que chaque code n'est présent qu'une seule fois
on considère que si on ne le trouve pas en feuille 1 il est obligatoirement en feuille 2

une feuille avec calcul développé dans 4 colonnes supplémentaires, une autre avec 1 seule colonne supplémentaire et calculs regroupés. Cette dernière colonne sup peut aussi être supprimée mais la formule deviendrait particulièrement longue.

A tester pour savoir si les temps de calculs sur 4000 références ne deviennent pas trop longs

Merci beaucoup Dugenou. Je regarde tout ça!
 

Modeste

XLDnaute Barbatruc
Re : Transformer un tableau de données

Bonjour à tous,

Je suis passé tout à l'heure ... pas de réponses. Et vl'là que maintenant, il y en a "plein"!

Comme j'ai fait, je poste: j'ai travaillé avec une macro qui traite les cellules de la colonne B uniquement et ne cherche les données que dans les deux premières feuilles du classeur.
Tester d'abord sur le fichier fourni pour vérifier que les résultats sont corrects.
Pas de tests implémentés pour vérifier s'il n'y a pas de cas particuliers (des dimensions sans le 'x' ou autres surprises)

Si les résultats sont ok, mais le temps d'exécution trop long, on peut utiliser des tableaux en mémoire (mais si c'est un "one shot" ... tu verras bien!)
 

Pièces jointes

  • TransformTableau (Wizzy).xlsm
    22.1 KB · Affichages: 26

Wizzy

XLDnaute Nouveau
Re : Transformer un tableau de données

Merci Modeste d'avoir travaillé dessus.
J'ai regardé le code que tu as mis mais je n'ai rien compris. Comme expliqué au dessus je n'ai quasiment aucune connaissance en VBA donc j'évite de m'en servir. Un jour peut-être ;)

J'avance pas mal en utilisant les formules de Dugenou, tout à l'air de marcher maintenant il faut que je bûche.

Merci à tous super forum!
 

Discussions similaires

Réponses
16
Affichages
433