Sub ExtractVide()
Application.EnableEvents = False
Application.ScreenUpdating = False
Dim col, i, der, lg, lx
Dim start As Single: start = Timer '(*temps de macro)
Dim tablo() As Variant
Dim tabRes() As Variant
With ActiveSheet
.[D76:AA143].ClearContents 'cette ligne sera certainement à adapter dans ton fichier final
fin = .Range("B" & .Rows.Count).End(xlUp).Row
tablo = .Range("B6:AA" & fin).Value
For j = LBound(tablo, 2) + 2 To UBound(tablo, 2)
tot = 1
For i = LBound(tablo, 1) To UBound(tablo, 1)
If tablo(i, j) = "" Then
ReDim Preserve tabRes(tot)
tabRes(tot) = tablo(i, 1)
tot = tot + 1
End If
Next i
.Cells(76, j + 1).Resize(UBound(tabRes), 1) = Application.Transpose(tabRes) 'cette ligne sera certainement à adapter dans ton fichier final
Next j
End With
Application.EnableEvents = True
Application.ScreenUpdating = True
MsgBox "C'est fini en :" & Chr(10) & Chr(10) & Timer - start & " secondes", vbInformation, "TEMPS D'EXCÉCUTION"
End Sub