Ensemble de valeurs en lignes vers valeurs en colonne

Bonjour,

J'ai une problématique de gestion d'un tableau de données.

J'ai une feuille avec plusieurs colonnes. La première est celles des identifiants de chaque enregistrement et les suivantes représentent des valeurs qui sont associées à chaque enregistrement.

Je voudrais, plutôt que d'avoir une ligne pour chaque enregistrement, avoir autant de lignes que de valeurs associées à l'enregistrement tout en conservant pour chaque valeur l'identifiant associé.

Voici un document Excel explicitant mon besoin à partir d'un exemple.

J'espère que ma demande n'est pas trop confuse. Merci d'avance pour vos retours en tous cas.

Valentin

35exemple-excel.xlsx (9.78 Ko)

Bonjour Valentin,

j'ai mit le résultat sur la feuil2

Sub Macro1()
Dim sh1, sh2, c As Range
Dim LastRw&, n&
Set sh1 = Sheets("Feuil1")
Set sh2 = Sheets("Feuil2")
LastRw = Cells(Rows.Count, 1).End(xlUp).Row
For Each c In Range("B2:E" & LastRw)
  If c <> "" Then
    n = n + 1
    sh2.Cells(n, 1) = Cells(c.Row, 1)
    sh2.Cells(n, 2) = c
  End If
Next
End Sub

Bonsoir Shinsky

A tester :

Option Explicit
Sub test()
Dim a, b(), i As Long, j As Long, n As Long
    a = Sheets("Feuil1").Range("a1").CurrentRegion.Value
    ReDim b(1 To UBound(a, 1) * (UBound(a, 2) - 1), 1 To 2)
    For i = 1 To UBound(a, 1)
        For j = 2 To UBound(a, 2)
            If a(i, j) <> "" Then
                n = n + 1
                b(n, 1) = a(i, 1)
                b(n, 2) = a(i, j)
            End If
        Next
    Next
    Application.ScreenUpdating = False
    With Sheets("Feuil2").Cells(1)
        .CurrentRegion.Clear
        With .Resize(n, UBound(b, 2))
            .Value = b
            .Font.Name = "calibri"
            .VerticalAlignment = xlCenter
            .BorderAround Weight:=xlThin
            .Borders(xlInsideVertical).Weight = xlThin
        End With
        .Parent.Activate
    End With
    Application.ScreenUpdating = True
End Sub

klin89

Merci à tous les deux pour ces supers solutions, c'est parfait .

(j'ai juste réadapté le script au nombre de colonnes de mon jeu de données réel et ça fonctionne toujours aussi bien)

C'est vraiment fou ce qu'on peut faire avec ces classeurs Excel !

Bonne journée

Valentin

Rechercher des sujets similaires à "ensemble valeurs lignes colonne"