Validation des données d'une texte Box
Bonjour,
Dans mon projet j'ai un Userform avec plusieurs TextBox dans lesquelles l'utilisateur devra entrer des dates au format jj/mm/aaaa.
Si la date entrée est supérieure à la date du jour je souhaite afficher un MsgBox pour l'avertir, voici le code que j'ai intégré dans ma macro:
Code:
1 2 3 4 5 6 7 8 9 10
| If Milestone_Edit.TextBox1.Enabled = True And Milestone_Edit.TextBox1.Value <> "" Then
If Milestone_Edit.TextBox1.Value <> "" And Milestone_Edit.TextBox1.Value > Act.Range("C1").Value Then
MsgBox " Invalid Date " & vbCr & "Date must be lower than the Current Data Date", , "WARNING"
Milestone_Edit.TextBox1.SetFocus
End If
ACVAL.Offset(i, 3).Value = CDate(Milestone_Edit.TextBox1.Value) ' Les données issues d'une TextBox sont au format String il faut donc spécifier le format désiré ici CDate
ACVAL.Offset(i, 3).NumberFormat = "[$-410]dd-mmm-yy;@"
Milestone_Edit.TextBox1.Value = ACVAL(i, 3).Value
Milestone_Edit.TextBox1.Enabled = False
End If |
Le problème c'est que dès qu'un chiffre est entré ma MsgBox apparaît, donc avant d'avoir saisi la date complète.
J'ai donc essayé ceci :
Code:
1 2 3 4
| If Milestone_Edit.TextBox1.Value <> "" And Milestone_Edit.NumberFormat = "[$-410]dd-mmm-yy;@" And Milestone_Edit.TextBox1.Value > Act.Range("C1").Value Then
MsgBox " Invalid Date " & vbCr & "Date must be lower than the Current Data Date", , "WARNING"
Milestone_Edit.TextBox1.SetFocus
End If |
Dans ce cas de figure j'ai un message d'erreur VBA qui s'affiche
Citation:
Erreur de Compilation
Membre de méthode ou de données introuvable
D'après l'aide cela peut venir du nom de l'objet ou du membre mal orthographié ou d'un index de collection hors limite.
Pour l’orthographe, j'ai vérifié et ce n'est pas cela, reste l'index de collection ... ???
Une idée, un conseil seront les bienvenus
merci pour votre aide et votre collaboration
Eric