Problème de date et textbox [Résolu]

Messages postés
8
Date d'inscription
mercredi 23 juin 2010
Dernière intervention
2 juillet 2010
- - Dernière réponse : Adn56
Messages postés
1220
Date d'inscription
jeudi 24 mai 2007
Dernière intervention
28 septembre 2013
- 2 juil. 2010 à 13:17
Bonjour à tous,

Je vous demande un petit coup de mains car j'ai fait un petit programme dans lequel l'utilisateur doit renseigner une date dans une textbox. Cette dernière affiche par défaut la date du jour. Quand je renvoi la date dans une cellule excel si l'utilisateur n'a pas modifié la date par défaut celle-ci s'affiche au format dd/mm/yyyy ( pas de soucis ) par contre si il à rentré une date autre celle ci s'affiche au format mm/dd/yyyy.

Je pense que je ne suis pas le premier à rencontrer ce soucis mais malgré tout ce que j'ai put lire à droite à gauche sur les forums je n'ai pas trouvé de solution et j'en ai essayé pas mal...

Merci d'avance pour votre aide si je n'ai pas été clair n'hésitez pas à ma le dire !!
Afficher la suite 

Votre réponse

9 réponses

Meilleure réponse
Messages postés
8
Date d'inscription
mercredi 23 juin 2010
Dernière intervention
2 juillet 2010
3
Merci
Ca y'est j'ai trouvé !!! ( enfin ça fait vraiment très longtemps que je cherchai et la solution est vraiment écœurante de simplicité ... )

Là ça marche :

Public vntIntervention As String

Private Sub TxtDate_Change()

vntIntervention = TxtDate.Value

End Sub

Private Sub CmdFin_Click()
vntIntervention = format(vntIntervention, "mm/dd/yyyy")
Cells(intL1, intC1).Value = vntIntervention

End Sub



Merci pour ton aide adn56 ce n'était pas forcement la solution mais le fait d'aborder le problème d'un autre angle m'a permis de trouver la solution ;)

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 98 internautes nous ont dit merci ce mois-ci

Commenter la réponse de tyron2002
Messages postés
1220
Date d'inscription
jeudi 24 mai 2007
Dernière intervention
28 septembre 2013
0
Merci
salut, je ne connais pas le vba des derniéres versions d'office, mais à mon époque je passais par une concaténation :
cell(x,y).value = XX.day & "/" & XX.month &/& XX.year (XX la variable qui contient la date).
cordialement.
Commenter la réponse de Adn56
Messages postés
8
Date d'inscription
mercredi 23 juin 2010
Dernière intervention
2 juillet 2010
0
Merci
Ton idée me paraissait pas mal mais voila le message qu'il me renvoi :"qualificateur incorrect"

Et que je déclare XX ( ma variable) en Date ou String ça ne change rien.
grosso modo voila ce que je fais :

Public vntIntervention As Date
'( j'ai essayer avec String ca ne marche pas mieux )

Private Sub TxtDate_Change()

vntIntervention = TxtDate.Value

End Sub

Private Sub CmdFin_Click()

Cells(intL1, intC1).Value = vntIntervention

End Sub

Merci d'avance pour votre aide
Commenter la réponse de tyron2002
Messages postés
1220
Date d'inscription
jeudi 24 mai 2007
Dernière intervention
28 septembre 2013
0
Merci
arf, le pire c'est que je viens de regarder ce matin au taff une vieille source est j'allais te poster ce midi la soluce avec format
Mais c'est toujours mieux de trouver par soi même
++
Commenter la réponse de Adn56
Messages postés
8
Date d'inscription
mercredi 23 juin 2010
Dernière intervention
2 juillet 2010
0
Merci
Merci quand même.

++
Commenter la réponse de tyron2002
Messages postés
8
Date d'inscription
mercredi 23 juin 2010
Dernière intervention
2 juillet 2010
0
Merci
Bon je relance ce sujet car la solution que j'ai trouvé marche très bien chez moi et mon excel 2007 mais pas chez un collègues avec excel 2003. J'ai lut des trucs comme quoi il faudrai mettre M/D/yyyy à la place de mm/dd/yyyy ça vous dit quelques choses ?
Commenter la réponse de tyron2002
Messages postés
1220
Date d'inscription
jeudi 24 mai 2007
Dernière intervention
28 septembre 2013
0
Merci
Salut, Utilise plutot ceci, car ce codage fonctionne trés bien.

Range("A2").NumberFormat = "d-mmm-yy"


Affiche par exemple : 01-juin-10

(code Excel 2002.)

++
Commenter la réponse de Adn56
Messages postés
8
Date d'inscription
mercredi 23 juin 2010
Dernière intervention
2 juillet 2010
0
Merci
Range("A2").NumberFormat = "d-mmm-yy"


Change la mise en forme de la date mais ne résout pas le problème d'inversion entre le mois et le jour provenant de la norme américaine.
Commenter la réponse de tyron2002
Messages postés
1220
Date d'inscription
jeudi 24 mai 2007
Dernière intervention
28 septembre 2013
0
Merci
'inscrit la date (mois et jours inversé pour pouvoir filtrer la date en francais avec excel)
Range("a2").Value = Calendar1
' fonctionne grace à l'astuce de la mise en forme de la date (en/fr)
Range("A2").NumberFormat = "d-mmm-yy"

Voila ce que j'ai dans ma macro et le résultat est OK (selection via une datetimepicker)
Tiens d'ailleur ce control fait buguer le classeur
cela marchait bien y'a 1 an !

bon ben voila...++
Commenter la réponse de Adn56

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.