Boucle date

Résolu
massimo888 Messages postés 203 Date d'inscription   Statut Membre Dernière intervention   -  
massimo888 Messages postés 203 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'ai un petit soucis avec mon fichier excel.

J'aimerais faire défiler en vba les dates dans une même cellule dans l'ordre décroissant. De Décembre à Janvier et interrompre la boucle dès que la cellule voisine passe de "-" à une valeur.

Exemple:
A1 = "-" => A2 = Décembre-17
A1 = 56 => A2 = Mars-17

Mon code:

Sub test()

do while Cells(1,2)="-"

Cells(1,1)="12-01-17"
Cells(1,1)="11-01-17"
Cells(1,1)="10-01-17"
.
.
.
Cells(1,1)="01-01-17"

end sub


En vous remerciant.

1 réponse

Zoul67 Messages postés 1959 Date d'inscription   Statut Membre Dernière intervention   149
 
Bonjour,

Sub essai()
    
    For k = 12 To 1 Step -1
        Cells(1, 1).Value = DateSerial(2017, 12, k)
        If Cells(1, 2).Value <> "-" Then Exit For
    Next k
    
End Sub


A+
0
Zoul67 Messages postés 1959 Date d'inscription   Statut Membre Dernière intervention   149
 
Pardon, c'est plutôt ça :

Sub essai()

For k = 12 To 1 Step -1
Cells(1, 1).Value = DateSerial(2017, k, 1)
If Cells(1, 2).Value <> "-" Then Exit For
Next k

End Sub
0
massimo888 Messages postés 203 Date d'inscription   Statut Membre Dernière intervention  
 
Tout d'abord Merci beaucoup pour la solution, elle marche nickel!
Ensuite voici le code dans une boucle pour avoir les lignes que l'on veut:

Sub essai()
For i = 4 To 18

For k = 12 To 1 Step -1
Cells(i, 9).Value = DateSerial(2017, k, 1)
If Cells(i, 10).Value <> "-" Then Exit For
Next k
Next i
End Sub
0