Transposition de données

mrverger

XLDnaute Nouveau
Bonjour à tous,

Je souhaite transposer des données d'un tableau dans un autre de manière automatique.
J'ai indiqué ce que je souhaite faire sur le fichier Joint.

Merci de votre aide !

Cordialement,
 

Pièces jointes

  • Transpo test.xlsx
    11.1 KB · Affichages: 13

youky(BJ)

XLDnaute Barbatruc
Bonjour et bienvenu au forum!
voici le fichier avec une macro, donc il faut activer les macros et cliquer sur le bouton rouge "Transpose"
Le tableau se fait en Feuil2
Bruno
 

Pièces jointes

  • Transpo test (1).xlsm
    18.8 KB · Affichages: 4

job75

XLDnaute Barbatruc
Bonjour mrverger, Bruno,

Voyez le fichier joint, avec des tableaux VBA c'est toujours plus rapide s'il y a beaucoup de lignes :
VB:
Private Sub Worksheet_Activate()
Dim tablo, resu(), i&, j%, n&
tablo = Feuil1.[A1].CurrentRegion.Resize(, 10)
ReDim resu(1 To 3 * UBound(tablo), 1 To 4)
For i = 2 To UBound(tablo)
    For j = 2 To 10 Step 3
        If tablo(i, j) <> "" Then
            n = n + 1
            resu(n, 1) = tablo(i, 1)
            resu(n, 2) = tablo(i, j)
            resu(n, 3) = tablo(i, j + 1)
            resu(n, 4) = tablo(i, j + 2)
        End If
Next j, i
'---restitution---
If FilterMode Then ShowAllData 'si la feuille est filtrée
With [A2] 'cellule à adapter
    If n Then
        .Resize(n, 4) = resu
        .Resize(n, 4).Borders.Weight = xlThin 'bordures
    End If
    .Offset(n).Resize(Rows.Count - n - .Row + 1, 4).Delete xlUp 'RAZ en dessous
End With
With UsedRange: End With 'actualise la barre de défilement verticale
End Sub
La macro se déclenche quand on active la feuille "Résultat".

A+
 

Pièces jointes

  • Transpo test (2).xlsm
    25.3 KB · Affichages: 4

Discussions similaires