Modifier une date dans un Userform
Résolu/Fermé
dudulleray
-
15 oct. 2013 à 14:06
melanie1324 Messages postés 1504 Date d'inscription vendredi 25 mai 2007 Statut Membre Dernière intervention 31 janvier 2018 - 16 oct. 2013 à 16:42
melanie1324 Messages postés 1504 Date d'inscription vendredi 25 mai 2007 Statut Membre Dernière intervention 31 janvier 2018 - 16 oct. 2013 à 16:42
A voir également:
- Modifier une date dans un Userform
- Modifier dns - Guide
- Modifier liste déroulante excel - Guide
- Modifier une story facebook - Guide
- Comment modifier un pdf - Guide
- Modifier extension fichier - Guide
5 réponses
melanie1324
Messages postés
1504
Date d'inscription
vendredi 25 mai 2007
Statut
Membre
Dernière intervention
31 janvier 2018
155
15 oct. 2013 à 14:11
15 oct. 2013 à 14:11
Bonjour,
Une suggestion :
Tu mets ta date d'expiration dans une cellule.
Par exemple, tu crées une feuille paramètre.
en A1 : date d'expiration
en A2 : la valeur de ta date d'expiration
et dans ton code, au lieu d'écrire :
DateExpiration = "16/10/2013"
tu écris
DateExpiration = sheets("Paramètre").cells(1,2)
Une suggestion :
Tu mets ta date d'expiration dans une cellule.
Par exemple, tu crées une feuille paramètre.
en A1 : date d'expiration
en A2 : la valeur de ta date d'expiration
et dans ton code, au lieu d'écrire :
DateExpiration = "16/10/2013"
tu écris
DateExpiration = sheets("Paramètre").cells(1,2)
melanie1324
Messages postés
1504
Date d'inscription
vendredi 25 mai 2007
Statut
Membre
Dernière intervention
31 janvier 2018
155
16 oct. 2013 à 11:17
16 oct. 2013 à 11:17
Bon, je suis un peu perdue, alors on va tout reprendre.
Ce que tu trouvais bien :
Ou alors tu laisses le label et tu rajoutes un bouton à droite du label : changer la date d'expiration et tu fais alors apparaître une inpubox demandant la nouvelle date.
Si j'ai bien compris, ton label 486 n'est plus un label mais un bouton, OUI ou non?
Que veux-tu qu'il fasse ce bouton? Qu'il demande la date d'expiration et que le commandbutton contienne la nouvelle date d'expiration?
Si tel est le cas, voici le code associé au bouton :
sub commandbutton_click 'remplaces commandbutton1 par le nom de ton commandbutton
dateexpiration = ""
do while dateexpiration =""
dateexpiration = "Merci d'indiquer la date d'expiration souhaitée :")
if not isdate(dateexpiration) then
dateexpiration = ""
msgbox "La date que vous avez saisi n'est pas une date"
end if
loop
commandbutton1.caption = dateexpiration 'remplace commandbutton1 par le nom de ton bouton
end sub
Ce que tu trouvais bien :
Ou alors tu laisses le label et tu rajoutes un bouton à droite du label : changer la date d'expiration et tu fais alors apparaître une inpubox demandant la nouvelle date.
Si j'ai bien compris, ton label 486 n'est plus un label mais un bouton, OUI ou non?
Que veux-tu qu'il fasse ce bouton? Qu'il demande la date d'expiration et que le commandbutton contienne la nouvelle date d'expiration?
Si tel est le cas, voici le code associé au bouton :
sub commandbutton_click 'remplaces commandbutton1 par le nom de ton commandbutton
dateexpiration = ""
do while dateexpiration =""
dateexpiration = "Merci d'indiquer la date d'expiration souhaitée :")
if not isdate(dateexpiration) then
dateexpiration = ""
msgbox "La date que vous avez saisi n'est pas une date"
end if
loop
commandbutton1.caption = dateexpiration 'remplace commandbutton1 par le nom de ton bouton
end sub
Salut
Merci pour ta réponse
j'ai déplacer le Label486 provisoirement plus gènant pour l'instant
et mis et baptiser un commandbutton2 pour l'instant
et qui est dessiné a la place du Label486
j'ai mis un dim dateexpiration car j'avais ( une erreur variable non définie)
des que je clic dans le commandbutton2 pour mettre une date
le message "La date que vous avez saisi n'est pas une date" apparait
et impossible de sortir d'excel pas planté mais bloquer
obliger de faire CTRL ALT SUP pour en sortir
le code modifier ci dessous
PS: Près éventuellement a faire autrement
Vu l'heure un bon app et merci pour ton aide
Raymond
Merci pour ta réponse
j'ai déplacer le Label486 provisoirement plus gènant pour l'instant
et mis et baptiser un commandbutton2 pour l'instant
et qui est dessiné a la place du Label486
j'ai mis un dim dateexpiration car j'avais ( une erreur variable non définie)
des que je clic dans le commandbutton2 pour mettre une date
le message "La date que vous avez saisi n'est pas une date" apparait
et impossible de sortir d'excel pas planté mais bloquer
obliger de faire CTRL ALT SUP pour en sortir
le code modifier ci dessous
Sub Commandbutton2_click()
Dim DateExpiration
DateExpiration = ""
Do While DateExpiration = ""
DateExpiration = "Merci d'indiquer la date d'expiration souhaitée :"
If Not IsDate(DateExpiration) Then
DateExpiration = ""
MsgBox "La date que vous avez saisi n'est pas une date"
End If
Loop
CommandButton2.Caption = DateExpiration
End Sub
PS: Près éventuellement a faire autrement
Vu l'heure un bon app et merci pour ton aide
Raymond
melanie1324
Messages postés
1504
Date d'inscription
vendredi 25 mai 2007
Statut
Membre
Dernière intervention
31 janvier 2018
155
16 oct. 2013 à 13:10
16 oct. 2013 à 13:10
Bonjour,
ca c'est à cause de la boucle :
Do While DateExpiration = ""DateExpiration = "Merci d'indiquer la date d'expiration souhaitée :" If Not IsDate(DateExpiration) Then DateExpiration = "" MsgBox "La date que vous avez saisi n'est pas une date" End IfLoop
Ca vérifie si c'es tune date, si tu veux enlever la vérification :
Sub Commandbutton2_click()
CommandButton2.Caption = "Merci d'indiquer la date d'expiration souhaitée :"
end sub
ca c'est à cause de la boucle :
Do While DateExpiration = ""DateExpiration = "Merci d'indiquer la date d'expiration souhaitée :" If Not IsDate(DateExpiration) Then DateExpiration = "" MsgBox "La date que vous avez saisi n'est pas une date" End IfLoop
Ca vérifie si c'es tune date, si tu veux enlever la vérification :
Sub Commandbutton2_click()
CommandButton2.Caption = "Merci d'indiquer la date d'expiration souhaitée :"
end sub
melanie1324
Messages postés
1504
Date d'inscription
vendredi 25 mai 2007
Statut
Membre
Dernière intervention
31 janvier 2018
155
16 oct. 2013 à 13:39
16 oct. 2013 à 13:39
pardon, une erreur de ma part, rééessaie les deux codes :
1°
Sub Commandbutton2_click()
Dim DateExpiration
DateExpiration = ""
Do While DateExpiration = ""
DateExpiration = inputbox("Merci d'indiquer la date d'expiration souhaitée :")
If Not IsDate(DateExpiration) Then
DateExpiration = ""
MsgBox "La date que vous avez saisi n'est pas une date"
End If
Loop
CommandButton2.Caption = DateExpiration
End Sub
2°) ou
Sub Commandbutton2_click()
CommandButton2.Caption = inputbox("Merci d'indiquer la date d'expiration souhaitée :")
End Sub
1°
Sub Commandbutton2_click()
Dim DateExpiration
DateExpiration = ""
Do While DateExpiration = ""
DateExpiration = inputbox("Merci d'indiquer la date d'expiration souhaitée :")
If Not IsDate(DateExpiration) Then
DateExpiration = ""
MsgBox "La date que vous avez saisi n'est pas une date"
End If
Loop
CommandButton2.Caption = DateExpiration
End Sub
2°) ou
Sub Commandbutton2_click()
CommandButton2.Caption = inputbox("Merci d'indiquer la date d'expiration souhaitée :")
End Sub
Merci bien , OK ca marche avec les deux codes
mais ca mets l'inputbox au milieu de l'écran et de l'userform
Alors peut'on faire pareil mais avec un Textbox comme ca
on resterai dans le control Textbox
je vire le commandButton2 et je mets un Textbox comme ca reste propre
voila derniere idée
Merci Mélanie
mais ca mets l'inputbox au milieu de l'écran et de l'userform
Alors peut'on faire pareil mais avec un Textbox comme ca
on resterai dans le control Textbox
je vire le commandButton2 et je mets un Textbox comme ca reste propre
voila derniere idée
Merci Mélanie
melanie1324
Messages postés
1504
Date d'inscription
vendredi 25 mai 2007
Statut
Membre
Dernière intervention
31 janvier 2018
155
16 oct. 2013 à 14:22
16 oct. 2013 à 14:22
Oui tu peux mettre une textbox.
Il suffit juste de mettre à l'initialisaiton de l'userform
texbox = dateexpiration
si tu veux vérifier que la saisie est une date :
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
if not isdate(textbox1.value) then
msgbox "Attention, la date saisie n'est pas correcte :"
end if
End Sub
Il suffit juste de mettre à l'initialisaiton de l'userform
texbox = dateexpiration
si tu veux vérifier que la saisie est une date :
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
if not isdate(textbox1.value) then
msgbox "Attention, la date saisie n'est pas correcte :"
end if
End Sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Re
J'ai mis un TextBox4 a la place du commandbutton2
j'ai mis le code
je clic dans le Textbox pour entrer une Date ok
je fait enter hé la message d'enfer
Excel a cessé de fonctionner etc etc
Fermer le programme
j'ai fait l'essai plusieurs fois idem
j'ai redemarrer j'ai mis en remarque le code du textbox et plus de plantage
Sinon je retiens l'idée du textbox j'en ai déja 3 dans mon USF et ca marche très bien
et en plus c'est propre a l'écran
Voila pour cet essai
Merci Ray
J'ai mis un TextBox4 a la place du commandbutton2
j'ai mis le code
je clic dans le Textbox pour entrer une Date ok
je fait enter hé la message d'enfer
Excel a cessé de fonctionner etc etc
Fermer le programme
j'ai fait l'essai plusieurs fois idem
j'ai redemarrer j'ai mis en remarque le code du textbox et plus de plantage
Sinon je retiens l'idée du textbox j'en ai déja 3 dans mon USF et ca marche très bien
et en plus c'est propre a l'écran
Voila pour cet essai
Merci Ray
melanie1324
Messages postés
1504
Date d'inscription
vendredi 25 mai 2007
Statut
Membre
Dernière intervention
31 janvier 2018
155
16 oct. 2013 à 15:56
16 oct. 2013 à 15:56
donc tout est résolu?
melanie1324
Messages postés
1504
Date d'inscription
vendredi 25 mai 2007
Statut
Membre
Dernière intervention
31 janvier 2018
155
16 oct. 2013 à 16:42
16 oct. 2013 à 16:42
Coucou,
Je ne sais pas quel code tu as mis, mais ca ne devrait pas tourner en boucle.
Je te joins un fichier :
http://cjoint.com/confirm.php?cjoint=CJqqPm7T051
Clique sur le bouton. Change la date, clique sur la seconde textbox.
Mets une date valide et une date invalide.
Ensuite, regarde le code.
Si vraiment ca t'échappe, faudra que tu me donnes ton fichier.
Je ne sais pas quel code tu as mis, mais ca ne devrait pas tourner en boucle.
Je te joins un fichier :
http://cjoint.com/confirm.php?cjoint=CJqqPm7T051
Clique sur le bouton. Change la date, clique sur la seconde textbox.
Mets une date valide et une date invalide.
Ensuite, regarde le code.
Si vraiment ca t'échappe, faudra que tu me donnes ton fichier.
15 oct. 2013 à 14:33
merci pour ta réponse et pour ta sggestion
j'aurai préferer intervenir directement pas l'intermédiaire de mon USF
j'avais penser à un Input Box ou un Textbox ou autre, bon, suis pas très sur d'avoir bon LOL
Cdlt Ray
Modifié par melanie1324 le 15/10/2013 à 14:42
tu peux faire aussi comme ca :
tu rajoutes une zone dans ton formulaire en indiquant date d'expiration.
Ou alors, effectivement, tu écris une minimacro demandant une date d'expiration et ensuite, tu enchaînes sur le userform.
Pour la macro :
public date DateExpiration
sub dateexpiration
DateExpiration = inputbox("Merci d'indiquer une date d'expiration :")
call userform("Me")
end sub
15 oct. 2013 à 14:55
Par Exemple: je clic dans le Label 486 et la date s'effacerai et je remplace par une autre, tout
simplement
car plus de place dans L'USF
Je t'avoue que je sais pas encore comment opérer , mais je cherche
Merci de t'interresser a mon sujet, c'est gentil
Ray
Modifié par melanie1324 le 15/10/2013 à 15:28
je ne vois pas la photo.
Tu peux aussi utiliser le label486. Mais je te conseille alors de remplacer ton label par une zone de texte.
A l'initialisation de ton userform : zone de texte = dateexpiration
Puis tu rajoutes : (attention, à chaque fois que tu cliqueras, la date s'effacera) :
sub zonedetexte_Click
zonedetexte.value = ""
end sub
Ou alors tu laisses le label et tu rajoutes un bouton à droite du label : changer la date d'expiration et tu fais alors apparaître une inpubox demandant la nouvelle date.
15 oct. 2013 à 15:41
http://www.cjoint.com/?0Jpn5BT1tcK
SVP qu'appelle tu (Zone de texte) , remplacer ton label par une zone de texte.
ci dessous bonne idée c'est peut etre jouable, je devrai pouvoir arranger ca
Ou alors tu laisses le label et tu rajoutes un bouton à droite du label : changer la date d'expiration et tu fais alors apparaître une inpubox demandant la nouvelle date
tu veux bien svp me faire un model de code pour ton idée ci dessous, si tu a le temps bien sur merci bien
Plus le temps d'essayer, je reviens plus tard après RDV spécialiste
Merci beaucoup Mélanie