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
| Sub Test4()
Dim LastLig As Long, i As Long, j As Long, n As Long
Dim Fin As Boolean
Dim Tb, Res()
Application.ScreenUpdating = False
With ThisWorkbook.Worksheets("Feuil1")
LastLig = .Cells(.Rows.Count, "A").End(xlUp).Row
Tb = .Range("A2:B" & LastLig)
.Range("E1").CurrentRegion.Clear
Do
i = i + 1
Fin = False
If Tb(i, 2) < Tb(i + 1, 2) And Tb(i, 2) < Tb(i + 2, 2) And Tb(i, 2) < Tb(i + 3, 2) Then Fin = True
If Not Fin Then
j = j + 1
ReDim Preserve Res(1 To 2, 1 To j)
Res(1, j) = CDbl(Tb(i, 1))
Res(2, j) = Tb(i, 2)
Else
If j > 0 Then
With .Range("E1").Offset(0, n)
.Resize(j, 2) = Application.Transpose(Res)
.Resize(j, 1).NumberFormat = "dd/mm/yyyy hh:mm"
End With
j = 0
n = n + 2
Erase Res
End If
End If
Loop While i < LastLig - 4 And n < 251 'la condition sur n pour ne pas dépasser 256 colonnes disponible sur excel 2003 vu le grand nombre de données
End With
End Sub |
Partager