Bonjour
J'ai une problématique avec mon code.
Si la loop trouve une date en F5 qui est plus de 365 jours. Le tout fonctionne
Si la loop trouve une date en F5 est vide et que F6 est plus de 365 jours. Le tout fonctionne
Si la loop trouve une date en F5 et F6 qui sont plus de 365 jours. Le tout fonctionne
Si la loop trouve une date en F5 qui est plus de 365 jours, que F6 est vide et que F7 est plus de 365 jours . Le MsgBox me donne seulement le résultat de F5
Même résultat avec
Si la loop trouve une date en F5 qui est plus de 365 jours, que F6 est moins de 365 jours et que F7 est plus de 365 jours . Le MsgBox me donne seulement le résultat de F5
Je suis certain qu'il me manque une indication... Voici mon code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 Private Sub Workbook_Open() Dim Cel As Range, s As String 's est une chaine de caractères s = "Attention!! Il y a une inscription de plus d'un an pour:" 'Pour chaque cellule de F5 à la fin de la colonne F For Each Cel In Range("F5:" & Range("F5").End(xlDown).Address) If Cel.Value = "" Or Cel.Value + 365 >= Date Then 'Si la valeur de la cellule est égale ou plus vieille que 365 jours que la date d'aujourd'hui Else 'Sinon: MsgBox 'on ajoute au texte et le contenu de la cellule en colonne A et B '(-1 = colonne à gauche de la cellule cible) s = s & vbCr & Cel.Offset(0, -5) & "," & " " & Cel.Offset(0, -4) 'Fin de la condition End If 'prochaine cellule Next Cel 'Si le dernier caractère à droite du texte n'est pas le caractère ":" 'Donc si on a ajouté du texte au texte de départ, 'on affiche le texte dans la boite de message If Right(s, 1) <> ":" Then MsgBox s, vbInformation, "Inscription" End Sub
Merci
Partager