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 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
|
Option Explicit
Sub test()
'Déclaration
Dim i, j, k, m, a, b, L As Integer
Dim derniere_ligne As Integer
Dim tab_exemple() As Variant
Dim date1, date2, date3 As Date
Dim Interval As Integer
date1 = Range("E2")
date3 = Range("E2")
date2 = Range("F2")
derniere_ligne = Range("A1").End(xlDown).Row
ReDim tab_exemple(derniere_ligne - 2, 1) 'Tableau de 11 x 3 "cases"
'Enregistrement des valeurs dans le tableau
For i = 0 To UBound(tab_exemple)
tab_exemple(i, 0) = Range("A" & i + 2)
tab_exemple(i, 1) = Range("B" & i + 2)
Next
'MsgBox tab_exemple(1, 0)
'a = 1
b = 2
k = 5
m = 3
For i = 0 To UBound(tab_exemple, 1) 'boucle sur la 1ere dimension. Commençant à la première ligne
For j = 1 To UBound(tab_exemple, 2) 'boucle sur la 2eme dimension donc les colonnes, en commençant à 0 la boucle va bouclé sur la première colonne puis sur la deuxième colonne
'If tab_exemple(0, 1) <> date1 Then
'date1 = DateSerial(2014, 2, 2 - 1)
If tab_exemple(i, 1) = date1 Then
Sheets("Sheet1").Cells(b, m) = "Ok"
date1 = DateAdd("d", 1, date1)
b = b + 1
ElseIf Not tab_exemple(i, 1) = date1 And tab_exemple(i, 1) = date3 Then
date1 = date3
'date1 = DateAdd("d", 1, date1)
Sheets("Sheet1").Cells(b, m) = tab_exemple(i, 0)
date1 = DateAdd("d", 1, date1)
'Interval = DateDiff("d", tab_exemple(i, 0), date2)
'For a =
b = b + 1
ElseIf tab_exemple(i, 1) <> date1 Then
m = m + 1
Sheets("Sheet1").Cells(b, m) = date1
date1 = DateAdd("d", 1, date1)
'b = b + 1
m = m - 1
i = i - 1
End If
Next j
Next i
End Sub |
Partager