controle de date dans un textbox

  • Initiateur de la discussion Initiateur de la discussion latige
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

L

latige

Guest
Bonjour,
Je souhaite verifier si la date saisie dans le textbox d'un userform est bien comprise entre le 01/01/1990 et le 01/01/2006.

Je voudrais contrer aussi des dates non conformes :

ex: le 36/36/2004 ou 1./08/2004

merci de votre aide.

La tige
 
Bonour le forum,

J'aurai la meme demande sauf que j'ai a controler des mesures et des departements!
Il faudrai que les mesures soit comprises entre 1000 et 4045. Pour les département évidemment de 01 a 99!

S'il vous plait aidez moi !

Au passage, Bonjour Latige, j'espère que tu te sortiras de ton petit soucis mais en attendant qu'une ame charitable t'aide, tu devrais relire ou lire la chartre du forum !

Merci a tous !
 
Bonjour le forum et latige,

Voila, je tente une solution.
Elle n'a pas valeur d'évangile car je ne suis encore qu'un débutant mais cela vaut la peine d'essayer et de me dire si ca marche!

Alors voila, convertit la saisie de ton TextBox en date par la commande

Textbox1.Value=CDate(TextBox1.Value)

Et tu fais un petit controle

If Not IsDate(TextBox1.Value) Then
MsgBox "Y a pas Bon"
Exit Sub
End If

Mallory
 
Bonjour Latige, Mallory, le Forum

Pour Latige, on peut faire comme ceci :

Option Explicit

Private Sub CommandButton1_Click()
With Me.TextBox1
If IsDate(.Value) Then

If CDate(.Value) >= 32874 And CDate(.Value) <= 38718 Then
MsgBox "C'est Bon"
Else
MsgBox "La Date " & Format(.Value, "DD/MM/YYYY") & " est hors fourchette"
End If
Else
MsgBox "Veuillez Saisirune Date car " & .Text & " n'est pas une date !"
End If
End With
End Sub


Pour toi Mallory, c'est un peu tordu, mais j'ai plus le temps !! lol
Option Explicit

Private Sub CommandButton1_Click()
Dim TheValue As Double
With Me.TextBox1
If IsNumeric(.Value) Then
TheValue = .Value
If Not Round(TheValue, 0) <> TheValue Then
If TheValue >= 1000 And TheValue <= 4045 Then
MsgBox "C'est Bon"
Else
MsgBox "La valeur " & TheValue & " est hors fourchette"
End If
Else
MsgBox "Veuillez Saisir un Entier ! et pas " & Format(TheValue, "####.#0")
End If
Else
MsgBox "Veuillez Saisir une Valeur numérique car " & .Text & " n'est pas une date !"
End If
End With
Exit Sub
End Sub

Bon Appétit
@+Thierry
 
Bonjour le forum, Latige, @+tierry,

Merci beaucoup thierry pour ton aide, ca fonctionne du tonnerre !

C'est déconcertant de voir comme c'est logique une fois qu'on a la solution!

Par contre pour y arriver seul y'a du boulot! alors merci a toi de prendre le temps de nous aider!

Latige, je prend aussi le merci pour moi mais le "ca marche a merveille" le laisse a qui de droit car de toute evidence, ma solution était loin d'etre valable!

Mallory
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

  • Question Question
Microsoft 365 Contrôle sur date
Réponses
8
Affichages
314
Réponses
3
Affichages
667
Retour