XL 2021 Transformation tableau format BD en tableau éclaté

nka

XLDnaute Nouveau
Bonjour à tous,

Je voudrais savoir comment transformer un tableau de ce type :
NOMDATEINDIC_1INDIC_2INDIC_3
Martin
31/12/2020​
1​
100​
200​
Bernard
31/12/2020​
2​
101​
201​
Thomas
31/12/2020​
3​
102​
202​

en tableau de ce type :
NOMDATEINDIC_1INDIC_2INDIC_3
Martin
31/12/2020​
1​
Bernard
31/12/2020​
2​
Thomas
31/12/2020​
3​
Martin
31/12/2020​
100​
Bernard
31/12/2020​
101​
Thomas
31/12/2020​
102​
Martin
31/12/2020​
200​
Bernard
31/12/2020​
201​
Thomas
31/12/2020​
202​

Bien évidemment, il faut imaginer que j'ai beaucoup plus de noms et beaucoup plus d'indicateurs...

Merci d'avance,

nka
 
Solution
Rebonjour à tous,

J'espère que vous avez passé un bon week-end.
Merci Chris pour ta réponse mais je n'arrive pas à ouvrir l'interface Power Query.

Je suis donc parti sur la réponse de Gégé-45550.

C'est très bien cela fonctionne. J'essaye de modifier le script pour l'adapter à mes besoins mais je suis trop débutant. Est-ce que cela serait possible de me faire les modifs suivantes :
- Faire en sorte que la réponse (après avoir cliqué sur GO) s'affiche sur une autre feuille du fichier ?
- Faire en sorte que le texte d'origine ne s'efface pas ?
- Adapter le script avec le tableau de base suivant ?

COMMUNEADRESSENOMLATITUDELONGITUDEDATEINDIC_1INDIC_2
...

crocrocro

XLDnaute Impliqué
Bonjour nka,
le plus simple serait de le faire en vba.​
Je te propose l'algorithme suivant très simple à convertir en code VBA :
Boucle For pour chaque ligne du Tableau
Boucle For pour chaque colonne Indice​
Si Indice courant renseigné​
Création d'une ligne dans le nouveau tableau initialisée avec Nom et Date Courante​
remplir indice courant de la ligne courante dans la colonne courante​
 
Dernière édition:

Gégé-45550

XLDnaute Accro
Bonjour à tous,

Je voudrais savoir comment transformer un tableau de ce type :
NOMDATEINDIC_1INDIC_2INDIC_3
Martin
31/12/2020​
1​
100​
200​
Bernard
31/12/2020​
2​
101​
201​
Thomas
31/12/2020​
3​
102​
202​

en tableau de ce type :
NOMDATEINDIC_1INDIC_2INDIC_3
Martin
31/12/2020​
1​
Bernard
31/12/2020​
2​
Thomas
31/12/2020​
3​
Martin
31/12/2020​
100​
Bernard
31/12/2020​
101​
Thomas
31/12/2020​
102​
Martin
31/12/2020​
200​
Bernard
31/12/2020​
201​
Thomas
31/12/2020​
202​

Bien évidemment, il faut imaginer que j'ai beaucoup plus de noms et beaucoup plus d'indicateurs...

Merci d'avance,

nka
Bonjour,
Une proposition en PJ.
Cordialement,
 

Pièces jointes

  • Test.xlsm
    27.5 KB · Affichages: 6

nka

XLDnaute Nouveau
Merci beaucoup pour les 3 réponses.
Mais je n'y connais rien ni en macro, ni en power query.
Donc :
- crocrocro, je ne sais pas du tout quoi faire de ta réponse.
- Gégé-45550, je vois que ton doc fonctionne mais comment accéder à la macro elle-même ?
- chris, comment accéder à la proposition Power Query ?
Merci d'avance,
nka

 

chris

XLDnaute Barbatruc
Bonjour
chris, comment accéder à la proposition Power Query ?
Alt F12 ou Données, Obtenir des données, Lancer PowerQuery
Tu verras la requête avec à droite les 6 étapes.

Si on pars de 0 :
La source doit être mise sous forme de tableau structuré, si ce n'est pas déjà le cas

Depuis une cellule du tableau, Données, A partir d'un tableau ce qui ouvre l'interface PowerQuery
  • à droite supprimer l'étape automatique de typage des données
  • sélectionner les colonnes Nom et Date, clic droit Dépivoter les autres colonnes
    dans la barre de formule remplacer Attribut par Indic
  • typer les données :
    • sélectionner Nom et Indic, clic droit, Modifier le type, Texte
    • sélectionner Date, clic droit, Modifier le type, Date
    • sélectionner Date, clic droit, Modifier le type, Nombre entier
  • onglet Ajouter une colonne, Colonne personnalisée : nom C, formule Number.From(Text.AfterDelimiter([Indic],"_"))
  • sélectionner la colonne Indic, onglet Transformer, Pivoter la colonne :
    Colonne de valeurs : Valeur
    Options avancées, Fonction de la valeur agrégée : ne pas agréger
  • Trier par Nom et C
  • Supprimer la colonne C
 

nka

XLDnaute Nouveau
Rebonjour à tous,

J'espère que vous avez passé un bon week-end.
Merci Chris pour ta réponse mais je n'arrive pas à ouvrir l'interface Power Query.

Je suis donc parti sur la réponse de Gégé-45550.

C'est très bien cela fonctionne. J'essaye de modifier le script pour l'adapter à mes besoins mais je suis trop débutant. Est-ce que cela serait possible de me faire les modifs suivantes :
- Faire en sorte que la réponse (après avoir cliqué sur GO) s'affiche sur une autre feuille du fichier ?
- Faire en sorte que le texte d'origine ne s'efface pas ?
- Adapter le script avec le tableau de base suivant ?

COMMUNEADRESSENOM LATITUDELONGITUDEDATEINDIC_1INDIC_2INDIC_3INDIC_4
Martin
31/12/20​
1​
100​
200​
12
Bernard
01/01/21​
2​
101​
201​
13
Thomas
02/01/21​
3​
102​
202​
14

Merci d'avance,

nka
 

Gégé-45550

XLDnaute Accro
Rebonjour à tous,

J'espère que vous avez passé un bon week-end.
Merci Chris pour ta réponse mais je n'arrive pas à ouvrir l'interface Power Query.

Je suis donc parti sur la réponse de Gégé-45550.

C'est très bien cela fonctionne. J'essaye de modifier le script pour l'adapter à mes besoins mais je suis trop débutant. Est-ce que cela serait possible de me faire les modifs suivantes :
- Faire en sorte que la réponse (après avoir cliqué sur GO) s'affiche sur une autre feuille du fichier ?
- Faire en sorte que le texte d'origine ne s'efface pas ?
- Adapter le script avec le tableau de base suivant ?

COMMUNEADRESSENOMLATITUDELONGITUDEDATEINDIC_1INDIC_2INDIC_3INDIC_4
Martin
31/12/20​
1​
100​
200​
12
Bernard
01/01/21​
2​
101​
201​
13
Thomas
02/01/21​
3​
102​
202​
14

Merci d'avance,

nka
Bonjour,
Voir PJ
Cordialement,
 

Pièces jointes

  • Test (3).xlsm
    32.1 KB · Affichages: 3

Discussions similaires

Réponses
4
Affichages
1 K

Statistiques des forums

Discussions
315 087
Messages
2 116 084
Membres
112 656
dernier inscrit
VNVT