Problème touche "entrer" et contôle date

[Résolu]
Signaler
Messages postés
20
Date d'inscription
vendredi 18 décembre 2009
Statut
Membre
Dernière intervention
17 juin 2011
-
Messages postés
20
Date d'inscription
vendredi 18 décembre 2009
Statut
Membre
Dernière intervention
17 juin 2011
-
Bonjour tout le monde,

j'ai un userform sur vba avec deux texbox et un bonton "rechercher"
le code contenu dans le bouton sert à rechercher l'existence dans une feuille excel de la valeur entrer dans l'un des deux texbox.
j'aimerais déclencher l'exécution de ce bonton de commande "recherher" en tapant juste sur la touche entrer du clavier. Un peu comme on le fait avec l'évenement click.

Mon 2e soucis c'est que sur le userform j'ai 2 contrôle date (DTPicker) et un label "durée" qui reçoit la différence en nbre de jour ouvrable des deux dates entrées.
etant donnée que mon application doit etre utilisé sur des versions d'excel antérieures (office xp et 2000) sur lesquelles ces contrôles date ne sont pas pris en compte, j'aimerais utiliser des texbox en lieu et place des contrôles date.
Alors quel macro faut-il pour modifier le format des valeurs entrer en format date jj/mm/aaaa. Et toujours avoir dans mon label "durée" la différence en nbre de jours ouvrables des deux dates entrées.


Merci pour votre aide

Configuration: Windows 2003 Internet Explorer 7.0 et Office 2003 SP3

7 réponses

Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
69
perso, :

a =CDate("24/12/2009")
b = CDate("31/12/2009")
? b-a
7


rien d'anormal


Renfield - Admin CodeS-SourceS - MVP Visual Basic
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
69
Pour ton bouton, il suffit de mettre sa propriété 'Default' à True pour qu'une pression sur Entree déclanche le _Click

IsDate pour t'assurer que ce qui est saisi est une date

If IsDate(Text1.Value) Then

CDate pour obtenir une variable de type Date
Dim dStart As Date
dStart = CDate(Text1.Value)





Renfield - Admin CodeS-SourceS - MVP Visual Basic
Messages postés
20
Date d'inscription
vendredi 18 décembre 2009
Statut
Membre
Dernière intervention
17 juin 2011

Merci renfield ça marche.
Quel est la macro que j'utilise pour calculer la différence entre les deux dates saisies dans les textbox.


Merci encore
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
69
la soustraction fonctionne bien

Renfield - Admin CodeS-SourceS - MVP Visual Basic
Messages postés
20
Date d'inscription
vendredi 18 décembre 2009
Statut
Membre
Dernière intervention
17 juin 2011

j'ai fait:
duree.caption = date2 - date1
mais ça ne marche pas, le système me renvoi un message d'erreur et apres debogage marque un arrêt sur la ligne.
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
69
un message d'erreur... cool...

lequel ?

Renfield - Admin CodeS-SourceS - MVP Visual Basic
Messages postés
20
Date d'inscription
vendredi 18 décembre 2009
Statut
Membre
Dernière intervention
17 juin 2011

Merci, ça marche j'avais oublié le CDate