Transposer valeurs vers un autre tableau

  • Initiateur de la discussion Initiateur de la discussion Claude
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Claude

XLDnaute Occasionnel
Bonjour le Forum,

Il s'agit de transposer les valeurs du tableau A2:B50 en D2:I23
de manière à ne conserver qu'une seule valeur de la colonne A
par ex.un seul 0, un seul 1, etc.. Sachant que les valeurs de
la colonne A sont variables.
La hauteur de la colonne A est par contre constante et comprend
toujours 49 cellules de A1 à A50. Par contre, la taille du tableau
D2:I23 est variable en focntion du nombre de valeurs de la colonne A

Je travail sur Excel 97 !

Ci-joint un petit exemple de travail.

Avec tous mes remerciements

Claude
 

Pièces jointes

Dernière édition:
Re : Transposer valeurs vers un autre tableau

Bonjour Claude 🙂,
D'après une formule de David84 pour trier dédoublonner, ton fichier en PJ, mais sans garantie sous 97 (j'étais pas né 😛...) 🙄...
Bonne suite 😎
 

Pièces jointes

Re : Transposer valeurs vers un autre tableau

Bonjour,

En VBA

Code:
Sub ListeInverses()
  Set d = CreateObject("Scripting.Dictionary")
  For Each c In [A2].Resize(Application.CountA([a:a]))
    d(c.Value) = d(c.Value) & c.Offset(, 1) & " "
  Next c
  ligne = 2
  For Each c In d.keys
    Cells(ligne, "D") = c
    a = Split(d.Item(c), " ")
    Cells(ligne, "D").Offset(, 1).Resize(, UBound(a) + 1) = _
         Application.Transpose(Application.Transpose(a))
    ligne = ligne + 1
  Next c
End Sub

JB
 

Pièces jointes

Dernière édition:
Re : Transposer valeurs vers un autre tableau

Bonjour,
au vu de l'exemple fourni (si pas de besoin de trier les valeurs), formule d'extraction des données de la colonne A sans doublon (validation matricielle), testée sur le fichier de JNP🙂 :
Code:
=INDEX(A:A;MIN(SI(NB.SI(N$1:N1;A$2:A$50)=0;LIGNE(A$2:A$50);LIGNES(A$2:A$50)+2)))&""
A+
 
Re : Transposer valeurs vers un autre tableau

Re 🙂,
Sur 97, A:A, j'ai des doutes 🙄...
D'ailleurs, en N2 de mon fichier, il vaudrait mieux
Code:
=SI(LIGNES($A$1:$A1)<=SOMME(1/NB.SI($A$2:$A$50;$A$2:$A$50));INDEX($A$2:$A$50;EQUIV(PETITE.VALEUR(SI(EQUIV($A$2:$A$50;$A$2:$A$50;0)=LIGNE(INDIRECT("$A1:$A"&LIGNES($A$2:$A$50)));NB.SI($A$2:$A$50;"<"&$A$2:$A$50));LIGNES($A$1:$A1));NB.SI($A$2:$A$50;"<"&$A$2:$A$50);0));"")
car l'indirect pointait sur une matrice "Ligne complète" mais non détectée par la compatibilité descendante, car Indirect 🙄...
Bonnse suite 😎
PS : Euh, Rachid, j'ai pas vraiment suivi la différence, ton fichier est strictement identique au mien 😕... Ah, tu viens de modifier, je comprends mieux 😛...
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
4
Affichages
265
Retour