Vraiment du sur-mesure qu'il te faut !
Sub Activites()
Dim Tact(), n%, i%, a%
With Worksheets("ListeAdm")
n = .Cells(.Rows.Count, 2).End(xlUp).Row
For i = 12 To n
If .Cells(i, 2) <> "" Then
a = a + 1: ReDim Preserve Tact(8, a)
Tact(1, a) = .Cells(i + 1, 1)
Tact(2, a) = .Cells(i + 1, 4) & Chr(10) & .Cells(i, 4)
Tact(3, a) = .Cells(i, 7) & Chr(10) & .Cells(i + 1, 7)
Tact(5, a) = .Cells(i, 8) & Chr(10) & .Cells(i + 1, 8)
Tact(7, a) = .Cells(i + 1, 13)
End If
Next i
If a > 0 Then Tact(0, 0) = .Cells(11, 1)
End With
Application.ScreenUpdating = False
With Worksheets("TabProg")
.Range("A3:I" & .UsedRange.Rows.Count + 3).Clear
With .Range("A3").Resize(a + 1, 9)
.Value = WorksheetFunction.Transpose(Tact)
With .Offset(1).Resize(a, 9)
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.WrapText = True
.RowHeight = 25.5
.Borders.Weight = xlThin
End With
End With
End With
End Sub
Cordialement.