Eclater cellules séparées par un retour chariot en autant de cellules que de mots

Chris401

XLDnaute Accro
Bonjour à tous

J'ai un tableau qui comporte en colonne F un ou plusieurs mots.
J'aimerai une macro qui "éclate" ces cellules en autant de lignes que nécessaires.

Modèle de que que j'attends dans le fichier joint.

Merci à tous et bon dimanche.
Chris
 

Pièces jointes

  • TEST.xls
    68 KB · Affichages: 46
  • TEST.xls
    68 KB · Affichages: 58
  • TEST.xls
    68 KB · Affichages: 62

Chris401

XLDnaute Accro
Re : Eclater cellules séparées par un retour chariot en autant de cellules que de mot

Bonjour tatiak

Merci de ta réponse mais je ne sais pas modifier ton code pour arriver au résultat que j'attends (trop novice)

J'ai essayé (entre autre) :

Code:
Sub Eclate()
Dim Tableau() As String
Dim Cel As Range
For Each Cel In Range("F2:F" & Range("F65000").End(xlUp).Row).End(xlUp)
Tableau = Split(Cel, Chr(10))
For i = 0 To UBound(Tableau)
Sheets("RESULTAT").Range("F" & i + 1) = Tableau(i)
Next i
Next Cel
End Sub

Peux-tu m'aider ?

Merci
Chris
 

Hervé

XLDnaute Barbatruc
Re : Eclater cellules séparées par un retour chariot en autant de cellules que de mot

salut :)

en attendant des codes plus simple des copains, un essai à travers ces boucles :

Code:
Dim i As Integer
Dim j As Integer
Dim k As Integer
Dim l As Integer
Dim tablo

Range("a1:g1").Copy Destination:=Sheets("RESULTAT").Range("a1") 'copie ligne d'entete

For i = 2 To Range("a65536").End(xlUp).Row
    tablo = Split(Cells(i, 6), Chr(10))
    With Sheets("RESULTAT")
        For k = 0 To UBound(tablo)
            l = .Range("a65536").End(xlUp).Row + 1
            For j = 1 To 5
                .Cells(l, j) = Cells(i, j)
            Next j
            .Cells(l, 6) = tablo(k)
        Next k
        .Range("a1").CurrentRegion.Borders.LineStyle = xlContinuous 'bordure
    End With
Next i

a plus

edit : salut tatiak
 

Discussions similaires

Statistiques des forums

Discussions
312 074
Messages
2 085 066
Membres
102 770
dernier inscrit
mathieu.lemaitre