un tableau assez compliqué à transformer...

blabal2

XLDnaute Nouveau
Bonjour,

J'ai un tableau assez mal foutu à transformer (que je vous transmets en pièce-jointe).

Chaque ligne correspond à une entreprise. Ensuite est présenté, sur plusieurs colonnes, chaque pays dans lesquels elle opère (qui sera bien sûr différent entre chaque entreprise) puis enfin les colonnes suivantes correspondent aux résultats dans ces différents pays.

J'aimerai pouvoir réaliser un tableau simple, avec le nom des entreprises dans les lignes, chaque pays en colonne, puis remplir ensuite avec les resultats correspondants.

Est-il possible de programmer simplement une macro qui ferait ça?

Merci d'avance
 

Pièces jointes

  • exemple.xls
    15.5 KB · Affichages: 62
  • exemple.xls
    15.5 KB · Affichages: 67
  • exemple.xls
    15.5 KB · Affichages: 68

blabal2

XLDnaute Nouveau
Re : un tableau assez compliqué à transformer...

Peut-être me suis-je mal expliqué.

En fait j'aimerais créer une sorte de tableau croisé dynamique.

Chaque entreprise opère dans plusieurs pays. Ces pays sont différents d'une entreprise à une autre.
La table que j'ai est présentée comme suit:

1ere colonne: nom de l'entreprise
2eme colonne: 1er pays ou zone géographique où l'entreprise opère
3eme colonne: 2eme pays...
etc
puis colonne suivantes: Ventes de l'entreprise dans pays 1, dans pays 2, ...

J'aimerais pouvoir mettre tous les pays de toutes les colonnes 1, 2, 3, ... en colonnes, puis ensuite remplir avec les ventes

Est-ce possible?

Merci encore
 

Gael

XLDnaute Barbatruc
Re : un tableau assez compliqué à transformer...

Bonjour Blabal2, bonjour à tous,

Ci-joint un exemple avec les pays d'Europe en "Sheet2".

Pour la manip:
* Recenser tous les pays différents et les mettre en colonne. Pour t'aider, tu peux les copier tous dans une seule colonne dans une feuille indépendante, puis trier la colonne et enlever les doublons.

* Copier la liste des entreprises
* Recopier à droite et en bas la formule de recherche (Sheet2, cellule C3) pour remplir tous les chiffres de ventes.

* Une fois que le tableau est OK, sélectionner tout le tableau et faire Copier puis collage spécial valeurs pour supprimer les formules et en faire un tableau indépendant.

Ceci n'est valable que pour une refonte ponctuelle du tableau, si tu dois faire ça tous les jours, il faudra réaliser une macro pour automatiser les opérations :p

@+

Gael
 

Pièces jointes

  • Pays_V1.xls
    37.5 KB · Affichages: 74

blabal2

XLDnaute Nouveau
Re : un tableau assez compliqué à transformer...

Merci c'est exactement ce que je voulais! :)
Effectivement il va falloir que j''automatise tout ça maintenant.

Je n'ai en revanche rien compris à la formule que tu as utilisé en c3. Elle fait quoi concrètement?

Merci beaucoup pour ton aide!
 

Gael

XLDnaute Barbatruc
Re : un tableau assez compliqué à transformer...

Re,

En décomposant la formule:

Code:
SI(ESTERREUR(EQUIV(C$2;Sheet1!$B2:$G2;0));""

Les pays d'une entreprise se trouvent en colonnes de B à G. "C$2" contient le nom d'un pays en colonne dans la nouvelle feuille.

"EQUIV(C$2;Sheet1!$B2:$G2;0)" va chercher le nom du pays dans les colonnes B à G de la feuille 1 et retourner le n° de la colonne 1 si B, 2 si C... Si le pays n'est pas trouvé, on a une erreur et donc on n'écrit rien dans la cellule (;"").

S'il n'y a pas d'erreur, c'est que le pays existe pour cette entreprise, dans ce cas, la deuxième partie de la formule va rechercher le montant des ventes:

Code:
INDEX(Sheet1!$H2:$M2;EQUIV(C$2;Sheet1!$B2:$G2;0))

Dans la table "Sheet1!$H2:$M2" qui contient les valeurs de ventes, INDEX va renvoyer le contenu de la cellule qui correspond au numéro renvoyé par EQUIV... si le pays est colonne C, EQUIV va renvoyer "2" et INDEX va retourner le contenu de la deuxième cellule de la plage, soit la colonne "I".

les "$" permettent de bloquer les lignes ou les colonnes, ce qui permet de recopier la formule vers le bas et à droite.

Vers le bas, les lignes vont s'incrémenter ($H2:$M2 donnera $H3:$M3 et ainsi de suite, mais le pays de référence en en-tête va rester en ligne 2.

Vers la droite c'est l'inverse, le pays va changer de colonne (C$2 donnera D$2...) mais les plages resteront identiques.

Voilà, j'espère que c'est à peu près clair.

Si tu veux automatiser, et dans la mesure où les pays et entreprises sont toujours les mêmes, tu peux garder le tableau avec les formules et le copier à un autre emplacement avec collage spécial valeurs. si le tableau d'origine est modifié, avec les ventes 2008 par exemple, le tableau avec les formules te donnera les nouvelles valeurs de ventes que tu pourra recopier ailleurs.

@+

Gael
 

blabal2

XLDnaute Nouveau
Re : un tableau assez compliqué à transformer...

Ton explication est très claire. Merci de t'être donné le temps. Vraiment. :)

En fait, il se peut que des sociétés soient rajoutées à l'avenir (et donc que le nombre de pays augmente également), mais je pense avoir tout ce qu'il me faut pour avancer.

Merci encore!
 

Discussions similaires

Statistiques des forums

Discussions
312 523
Messages
2 089 309
Membres
104 119
dernier inscrit
karbone57