Sub ventilation_2()
Dim i&, J&, K&, KErr&
Dim T As Variant, TErr As Variant
With Sheets("Feuil1")
T = .Range(.Cells(1, 1), .Cells(.Rows.Count, 1).End(3)(1, 14))
End With
TErr = T
For i = LBound(T, 1) To UBound(T, 1)
If T(i, 10) = "4H" Or T(i, 10) = "4D" Or T(i, 11) = "" Then
If IsError(T(i, 14)) Then
KErr = KErr + 1
For J = LBound(T, 2) To UBound(T, 2)
TErr(KErr, J) = T(i, J)
Next J
Else
K = K + 1
For J = LBound(T, 2) To UBound(T, 2)
T(K, J) = T(i, J)
Next J
End If
End If
Next i
If K > 0 Then Sheets("Feuil3").Cells(1, 1).Resize(K, UBound(T, 2)) = T
If KErr > 0 Then Sheets("Feuil4").Cells(1, 1).Resize(KErr, UBound(TErr, 2)) = TErr
End Sub
Sub ventilation_3()
Dim i&, J&, K&, KErr&
Dim T As Variant, TErr As Variant
With Sheets("Feuil1")
T = .Range(.Cells(1, 1), .Cells(.Rows.Count, 1).End(3)(1, 14))
End With
TErr = T
For i = LBound(T, 1) To UBound(T, 1)
If IsError(T(i, 14)) Then
KErr = KErr + 1
For J = LBound(T, 2) To UBound(T, 2)
TErr(KErr, J) = T(i, J)
Next J
ElseIf T(i, 10) = "4H" Or T(i, 10) = "4D" Or T(i, 11) = "" Then
K = K + 1
For J = LBound(T, 2) To UBound(T, 2)
T(K, J) = T(i, J)
Next J
End If
Next i
If K > 0 Then Sheets("Feuil3").Cells(1, 1).Resize(K, UBound(T, 2)) = T
If KErr > 0 Then Sheets("Feuil4").Cells(1, 1).Resize(KErr, UBound(TErr, 2)) = TErr
End Sub