1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
|
Sub recup_chaine()
Dim i As Integer, r As Integer
Sheets(2).Range("A2:C65535").ClearContents
For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row
If i = 2 Then
r = Sheets(2).Cells(Rows.Count, 1).End(xlUp)(2).Row
Sheets(2).Cells(r, 1) = Cells(i, 1)
Sheets(2).Cells(r, 4) = Cells(i, 4)
If Cells(i, 3) = "R" Then
Sheets(2).Cells(r, 2) = Cells(i, 2)
Else
Sheets(2).Cells(r, 3) = Cells(i, 2)
End If
GoTo suite
Else
If Cells(i, 1) = Cells(i - 1, 1) Then
r = Sheets(2).Cells(Rows.Count, 1).End(xlUp).Row
If Cells(i, 3) = "R" Then
If Sheets(2).Cells(r, 2) <> "" Then
Sheets(2).Cells(r, 2) = Sheets(2).Cells(r, 2) & ", " & Cells(i, 2)
Sheets(2).Cells(r, 4) = Sheets(2).Cells(r, 4) & ", " & Cells(i, 4)
Else
Sheets(2).Cells(r, 2) = Cells(i, 2)
End If
Else
If Sheets(2).Cells(r, 3) <> "" Then
Sheets(2).Cells(r, 3) = Sheets(2).Cells(r, 3) & ", " & Cells(i, 2)
Else
Sheets(2).Cells(r, 3) = Cells(i, 2)
End If
End If
Else
r = Sheets(2).Cells(Rows.Count, 1).End(xlUp)(2).Row
Sheets(2).Cells(r, 1) = Cells(i, 1)
Sheets(2).Cells(r, 4) = Cells(i, 4)
If Cells(i, 3) = "R" Then
Sheets(2).Cells(r, 2) = Cells(i, 2)
Else
Sheets(2).Cells(r, 3) = Cells(i, 2)
End If
End If
End If
suite:
Next
End Sub |
Partager