Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Autres Fonction Date dans TextBox

Nonomix

XLDnaute Nouveau
Bonjour,

J'ai un tableau réaliser sous Excel 2007 avec un formulaire avec une TextBox que je voudrais au format date.

Actuellement je suis obliger de rentrer au format 01/02/2020 (pour 1 février 2020) mais cela me mets dans la cellule 02/01/2020 (pour 2 janvier 2020) ce qui correspond pas du tout a mon souhait.

J'aimerais qu'on puisse saisir au choix 01/02/2020 ou 01.02.2020 ou 01022020 et que cela me copie dans la cellule final A1 au format jj/mm/aaaa. La cellule A2 comprend la formule =A1 mais doit être au format exclusif mmm-aa (car actuellement cela mets au format identique que A1 malgré la configuration format cellule mmm-aa)

Merci pour votre aide.
 

Nonomix

XLDnaute Nouveau

Cela viens peut être de moi mais je trouve pas le bon endroit pour l'insérer correctement dans ma bva.
 

jmfmarques

XLDnaute Accro
Bonjour à tous
une textbox textbox1 contient bien une date valide et saisie sous le forme "dd/mm/yyyy"
si, à la fois :
isdate(textbox1.text)
et
format(cdate(textbox1.text), "dd/mm/yyyy") = textbox1.Text
 

patricktoulon

XLDnaute Barbatruc
re Bonjour jmfmarques
haie haie!!!!!!!!!!!!!!!!!!!!!!
essaie ton truc avec 31/02/2019
a ben mince alors cdate il aime pas
venant de toi je suis étonné
il n'y a qu'une seule fonction qui permette le control de validité de la date sans problème de gestion d'erreur en amont sans Le ("on error resume next")
dois je le dire ?

ou alors oui imbriquer les deux conditions dans un if then if et non un if and
 
Dernière édition:

jmfmarques

XLDnaute Accro
Ah... Ah ? Ah AH ???
Je te suggère d'être moins "étonné" et de faire les tests tels que définis
Tu as vu le "à la fois" (que j'ai pourtant mis en gras) ?
En espérant que le développeur avancé que tu es ne s'est pas égaré à mettre ces deux vérifications sur la même ligne, hein ...
 

jmfmarques

XLDnaute Accro
Allez, juste pour t'aider à faire bien les choses :
VB:
Private Function dateok(d As String) As Boolean
  If IsDate(TextBox1.Text) Then
     dateok = Format(CDate(TextBox1.Text), "dd/mm/yyyy") = TextBox1.Text
  End If
End Function
 

patricktoulon

XLDnaute Barbatruc
re
oui tu a raison faisons les bien
Private Function dateok(d As String) As Boolean
If IsDate(TextBox1.Text) Then
dateok = Format(CDate(TextBox1.Text), "dd/mm/yyyy") = TextBox1.Text
End If
End Function
 

Discussions similaires

Réponses
2
Affichages
255
Réponses
2
Affichages
313
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…