glaspow | Bonjour à tous,
(J'avoue que je n'étais pas très inspiré pour le titre )
Alors voila je dispose d'un tableau comme ci-dessous :
_______________________________________________________________________
114 115 du au
10 01/04/2013 15/05/2013
11 17/05/2013 30/05/2013
12 31/05/2013 20/06/2013
13 03/03/2013 20/03/2013
14
15
_______________________________________________________________________
Je souhaite afficher les periodes manquantes entre la date la plus ancienne et la plus récente Ainsi, ici, je souhaite obtenir :
252
4 -dates manquantes : du 15/05/2013 au 17/05/2013
5 -dates manquantes : du 20/03/2013 au 01/04/2013
J'essaye mais je n'obtiens pas les resultats esperes alors je m'adresse à vous pour avoir quelquels pistes ou methodes
Voici mon dernier essai :
Code :
- Cells(Rows.Count, 114).End(xlUp).Select
- der_SORTIE = ActiveCell.Row
- Cells(Rows.Count, 252).End(xlUp).Select
- der = ActiveCell.Row
- For cel = 4 To der
- Cells(cel, 252) = ""
- Next
-
- cpt = 0
- compt = 1
- For L1 = 10 To der_SORTIE
- For L2 = 10 To der_SORTIE
- If Cells(L1, 114) <> Cells(L2, 114) And Cells(L1, 115) <> Cells(L2, 115) And Cells(L1, 115) < Cells(L2, 114) Then
- If Cells(L1, 115) < Cells(L2, 114) Then
- c = 0
- If L2 <> der_SORTIE Then
- For L3 = L2 To der_SORTIE
- If (Cells(L2, 114) - Cells(L1, 115)) < (Cells(L3, 114) - Cells(L2, 115)) Then
- c = 1
- End If
- Next
- End If
- If c = 0 Then
- If (Cells(L2, 114) - Cells(L1, 115)) > 1 Then
- Cells(Rows.Count, 252).End(xlUp).Select
- der = ActiveCell.Row
- Cells(der + 1, 252) = " Dates manquantes du " & Cells(L1, 115) & " au " & Cells(L2, 114)
- End If
- End If
- End If
- End If
- Next
- Next
|
J'obtiens :
_______________________________________________________________________
252
4 -dates manquantes : du 14/05/2013 au 17/05/2013
5 -dates manquantes : du 14/05/2013 au 31/05/2013
6 -dates manquantes : du 20/03/2013 au 17/05/2013
7 -dates manquantes : du 20/03/2013 au 31/05/2013
_______________________________________________________________________
Message édité par glaspow le 12-06-2013 à 13:13:55
|