XL 2016 Organisation de données

dridriboulot

XLDnaute Nouveau
Bonjour,

Je suis en train de réorganiser une base de données en vu de faire des régressions. Je voudrais transposer mes données actuelles en panel.

Je m'explique et le fichier exemple joint permet de visualiser la situation. Ma base de données regroupe de nombreux contrats, qui sont octroyé sur une période temporelle de 2009 à 2015. J'aimerai réorganiser mes données par entreprise et par année et non plus par contrat. L'idée est de passer d'une liste d'entreprise à ça:

Colonne 1 Colonne 2
Entreprise i 2009
Entreprise i 2010
...
Entreprise i 2015
Entreprise k 2009
Entreprise k 2010
...
Entreprise k 2015

J'ai donc une liste d'entreprise (plus de 1000) et j'aimerai que pour chacune d'elles il y ait 7 lignes (2009 à 2015) dans 2 colonnes avec le nom dans une cellule et l'année dans une autre.

Pourriez vous m'aider à automatiser cette idée?

Je vous remercie par avance,

Adrien
 

Pièces jointes

  • Exemple.xlsx
    10.7 KB · Affichages: 47

Modeste geedee

XLDnaute Barbatruc
Bonsour®
L'idée est vraiment de prendre le nom de l'entreprise sur la première feuille, de le répéter 7 fois sur la deuxième et ainsi de suite.

Tu vois ce que je veux dire? :)
:confused: je ne vais pas créer des données à partir d'une idée...
si tu veux du virtuel , via l'enregistreur de macro, tu répètes 7 fois sur la deuxième et ainsi de suite.
Tu vois ce que je veux dire? :mad::po_O
 

dridriboulot

XLDnaute Nouveau
Je pense qu'on s'est mal compris! Oublie mon premier message, on part sur le fichier Excel que je joins.
  • Dans la première feuille, j'ai une liste d'entreprise.
  • Dans la deuxième, j'ai tableau qui met en vis à vis une entreprise et une année sur 7 années différentes, donc sur 7 lignes.
Ce que j'aimerai faire, c'est prendre le nom d'une entreprise (par exemple l'entreprise A) dans la feuille 1 et la copier sur 7 lignes différentes dans la feuille 2 (tel que c'est présenté dans le fichier exemple) et ainsi de suite de façon plus automatique qu'un copier coller!

Est ce plus clair ? :D
 

Pièces jointes

  • Exemple.xlsx
    10.7 KB · Affichages: 46

Modeste geedee

XLDnaute Barbatruc
Bonsour®
Je pense qu'on s'est mal compris! Oublie mon premier message, on part sur le fichier Excel que je joins.
  • Dans la première feuille, j'ai une liste d'entreprise.
  • Dans la deuxième, j'ai tableau qui met en vis à vis une entreprise et une année sur 7 années différentes, donc sur 7 lignes.
Ce que j'aimerai faire, c'est prendre le nom d'une entreprise (par exemple l'entreprise A) dans la feuille 1 et la copier sur 7 lignes différentes dans la feuille 2 (tel que c'est présenté dans le fichier exemple) et ainsi de suite de façon plus automatique qu'un copier coller!

Est ce plus clair ? :D
Limpide !!!
VB:
Sub dridriboulot()
Dim WS1 As Worksheet, WS2 As Worksheet
Set WS1 = ThisWorkbook.Sheets("Entreprise")
Set WS2 = ThisWorkbook.Sheets("donneesPanel")
Dim IdxNom As Integer, IdxPanel As Integer, Annee As Integer
IdxNom = 2: IdxPanel = 1
While WS1.Cells(IdxNom, 4) <> 0
For Annee = 1 To 7
IdxPanel = IdxPanel + 1
WS2.Cells(IdxPanel, 1) = WS1.Cells(IdxNom, 4)
WS2.Cells(IdxPanel, 2) = 2008 + Annee
Next
IdxNom = IdxNom + 1
Wend
End Sub
 

Statistiques des forums

Discussions
311 724
Messages
2 081 936
Membres
101 844
dernier inscrit
pktla