Rapport de message :*
 

Re: Spliter Cellule et dupliquer ligne - De l'aide Pleasssssssee

Titre du sujet : Re: Spliter Cellule et dupliquer ligne - De l'aide Pleasssssssee
par JeanMarie le 13/09/2012 07:13:17

Bonjour Djaleem, Didier, le forum

Essaye ce code
Sub splitv()
    Dim c As Range, lig As Long, ch As Variant, i As Long
    For lig = [A65536].End(xlUp).Row To 2 Step -1
        Set c = Cells(lig, "D")
        If InStr(c, vbLf) Then
            ch = Split(c.Value, vbLf)
            For i = UBound(ch) To 1 Step -1
                Range("A" & (lig + 1) & ":D" & (lig + 1)).Insert Shift:=xlDown
                Range("A" & (lig + 1) & ":C" & (lig + 1)).Value = Range("A" & lig & ":C" & lig).Value
                c.Offset(1, 0) = ch(i)
            Next i
            c = ch(0)
        End If
    Next lig
End Sub
  
J'ai changé plusieurs ligne :
Dans la ligne For lig = [A65536].End(xlUp).Row To 2 Step -1, remplacement du 1 par le 2, pour ne pas spliter la ligne titre.
Dans la ligne Set c = Cells(lig, "D")ce n'est pas la cellule de la colonne A qui contient la cellule avec les retour chariot
Ce n'est pas uniquement une insertion sur une seule cellule qui faut faire, mais sur une plage de cellules allant A:D
La ligne permet range(......).value = range(......).value permet de la copie de valeur d'un bloc de cellule sur un autre bloc.

@+Jean-Marie