Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Calendrier et Calendar

8 réponses
Avatar
crisben
Bonjour,

Dans mon programme vba sous excel, j'utilise "Calendar", pour recuperer une
date choisie par l'utilisateur (moi en loccurence) avec le format suivant si
la date
choisie est par exemple le 28 mai 2007, 28 05 2007, dont voici le code:

Private Sub Calendar1_Click()

monjourtxt = Day(Calendar1)
Monmoistxt = Month(Calendar1)
Monanneetxt = Year(Calendar1)

Select Case Month(Calendar1)
Case Is < 10
Monmoistxt = "0" & Month(Calendar1)
Case Else
Monmoistxt = Month(Calendar1)
End Select

Select Case Day(Calendar1)
Case Is < 10
monjourtxt = "0" & Day(Calendar1)
Case Else
monjourtxt = Day(Calendar1)
End Select

DateTxt = monjourtxt & " " & Monmoistxt & " " & Monanneetxt
DateNouvelleSoiree = DateTxt
'Sheets("Accueil").Cells(20, 3) = MaDateTxt

MsgBox Calendar1.Value
Unload Calendrier
End Sub

Ma question est de savoir comment dois je faire pour qu' à l'affichage de
l'userform
"Calendrier", la date soit celle du jour ou date systeme,car actuellement
dès que le calendrier s'affiche, je tombe sur la date du 27/04/2005,valeur
que l'on retouve dans les propriétée de Calendar.

Merci pour votre aide

8 réponses

Avatar
LE TROLL
Bonjour,

Sous réserve car je réponds en VB

Pour l'affectation:

X = Calendar1.day
X = Calendar1.month
X = Calendar1.year

Pour ton format il peut y avoir plus court:

Monmoistxt = format(Calendar1.month, "00")
Monjourtxt = format(calendar1.day, "00")

Vois si ceci marche:
Calendar1.calendar1.day = day(date)
Calendar1.calendar1.month = month(date)
Calendar1.calendar1.year = year(date)

OU, vois aussi si ça, ça passe:

calendar1.value = date

--
Romans, logiciels, email, site personnel
http://irolog.free.fr/joe.htm
------------------------------------------------------------------------------------
"crisben" a
écrit dans le message de news:

| Bonjour,
|
| Dans mon programme vba sous excel, j'utilise
"Calendar", pour recuperer une
| date choisie par l'utilisateur (moi en
loccurence) avec le format suivant si
| la date
| choisie est par exemple le 28 mai 2007, 28 05
2007, dont voici le code:
|
| Private Sub Calendar1_Click()
|
| monjourtxt = Day(Calendar1)
| Monmoistxt = Month(Calendar1)
| Monanneetxt = Year(Calendar1)
|
| Select Case Month(Calendar1)
| Case Is < 10
| Monmoistxt = "0" & Month(Calendar1)
| Case Else
| Monmoistxt = Month(Calendar1)
| End Select
|
| Select Case Day(Calendar1)
| Case Is < 10
| monjourtxt = "0" & Day(Calendar1)
| Case Else
| monjourtxt = Day(Calendar1)
| End Select
|
| DateTxt = monjourtxt & " " & Monmoistxt & " " &
Monanneetxt
| DateNouvelleSoiree = DateTxt
| 'Sheets("Accueil").Cells(20, 3) = MaDateTxt
|
| MsgBox Calendar1.Value
| Unload Calendrier
| End Sub
|
| Ma question est de savoir comment dois je faire
pour qu' à l'affichage de
| l'userform
| "Calendrier", la date soit celle du jour ou date
systeme,car actuellement
| dès que le calendrier s'affiche, je tombe sur la
date du 27/04/2005,valeur
| que l'on retouve dans les propriétée de
Calendar.
|
| Merci pour votre aide
Avatar
Fred
Dans : news:,
crisben disait :
Bonjour,



Bonjour,

Ma question est de savoir comment dois je faire pour qu' à
l'affichage de l'userform
"Calendrier", la date soit celle du jour ou date systeme,



Dans le Form_Load
Me.Calendar1.value = now


--
Fred
http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
Avatar
crisben
Merci pour vos reponses, mais apres avoir essayer la solution de Le Troll et
la votre,je n'y arrive pas.

"Fred" a écrit :

Dans : news:,
crisben disait :
> Bonjour,

Bonjour,

> Ma question est de savoir comment dois je faire pour qu' à
> l'affichage de l'userform
> "Calendrier", la date soit celle du jour ou date systeme,

Dans le Form_Load
Me.Calendar1.value = now


--
Fred
http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)




Avatar
Jacques93
Bonjour crisben,
crisben a écrit :
Merci pour vos reponses, mais apres avoir essayer la solution de Le Troll et
la votre,je n'y arrive pas.

"Fred" a écrit :

Dans : news:,
crisben disait :
Bonjour,


Bonjour,

Ma question est de savoir comment dois je faire pour qu' à
l'affichage de l'userform
"Calendrier", la date soit celle du jour ou date systeme,


Dans le Form_Load
Me.Calendar1.value = now


--
Fred
http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)







Comme tu parles de UserForm, je suppose que tu es en VBA sous Excel (ou
autre). Le code indiqué par Fred :

Me.Calendar1.Value = Now ()

est à placer dans le code du UserForm dans l'événement :

Private Sub UserForm_Initialize()

(Form_Load étant l'équivalant en VB)

--
Cordialement,

Jacques.
Avatar
Jean Yves SÉVENO
Bonjour.

Calendar1.Today

Mettre cette instruction dans la procédure événementielle UserForm_Activate.

Cordialement.

Jean Yves


"crisben" a écrit dans le message de
news:
Bonjour,

Dans mon programme vba sous excel, j'utilise "Calendar", pour recuperer
une
date choisie par l'utilisateur (moi en loccurence) avec le format suivant
si
la date
choisie est par exemple le 28 mai 2007, 28 05 2007, dont voici le code:

Private Sub Calendar1_Click()

monjourtxt = Day(Calendar1)
Monmoistxt = Month(Calendar1)
Monanneetxt = Year(Calendar1)

Select Case Month(Calendar1)
Case Is < 10
Monmoistxt = "0" & Month(Calendar1)
Case Else
Monmoistxt = Month(Calendar1)
End Select

Select Case Day(Calendar1)
Case Is < 10
monjourtxt = "0" & Day(Calendar1)
Case Else
monjourtxt = Day(Calendar1)
End Select

DateTxt = monjourtxt & " " & Monmoistxt & " " & Monanneetxt
DateNouvelleSoiree = DateTxt
'Sheets("Accueil").Cells(20, 3) = MaDateTxt

MsgBox Calendar1.Value
Unload Calendrier
End Sub

Ma question est de savoir comment dois je faire pour qu' à l'affichage de
l'userform
"Calendrier", la date soit celle du jour ou date systeme,car actuellement
dès que le calendrier s'affiche, je tombe sur la date du 27/04/2005,valeur
que l'on retouve dans les propriétée de Calendar.

Merci pour votre aide


Avatar
crisben
Merci pour votre, mais je crois que dois faire une erreur de comprehension.
car je n'arrive pas a obtenir la date du jour.
J' utilise "Calendrier" que j'affiche à l'ecran en utilisant la procédur
suivante :

Sub AfficherCalendrier()
Calendrier.Show
End Sub.

Une fois le calendrier affiché j'utilise les proprietes de Calendar comme
décrit plus haut.
Donc je me demande a quel niveau je dois ecrire les differentes possibilités
que vous me donnez pour répondre à ma question.
Encore merci.
Benoit

"Jean Yves SÉVENO" a écrit :

Bonjour.

Calendar1.Today

Mettre cette instruction dans la procédure événementielle UserForm_Activate.

Cordialement.

Jean Yves


"crisben" a écrit dans le message de
news:
> Bonjour,
>
> Dans mon programme vba sous excel, j'utilise "Calendar", pour recuperer
> une
> date choisie par l'utilisateur (moi en loccurence) avec le format suivant
> si
> la date
> choisie est par exemple le 28 mai 2007, 28 05 2007, dont voici le code:
>
> Private Sub Calendar1_Click()
>
> monjourtxt = Day(Calendar1)
> Monmoistxt = Month(Calendar1)
> Monanneetxt = Year(Calendar1)
>
> Select Case Month(Calendar1)
> Case Is < 10
> Monmoistxt = "0" & Month(Calendar1)
> Case Else
> Monmoistxt = Month(Calendar1)
> End Select
>
> Select Case Day(Calendar1)
> Case Is < 10
> monjourtxt = "0" & Day(Calendar1)
> Case Else
> monjourtxt = Day(Calendar1)
> End Select
>
> DateTxt = monjourtxt & " " & Monmoistxt & " " & Monanneetxt
> DateNouvelleSoiree = DateTxt
> 'Sheets("Accueil").Cells(20, 3) = MaDateTxt
>
> MsgBox Calendar1.Value
> Unload Calendrier
> End Sub
>
> Ma question est de savoir comment dois je faire pour qu' à l'affichage de
> l'userform
> "Calendrier", la date soit celle du jour ou date systeme,car actuellement
> dès que le calendrier s'affiche, je tombe sur la date du 27/04/2005,valeur
> que l'on retouve dans les propriétée de Calendar.
>
> Merci pour votre aide





Avatar
crisben
J'ai trouve une solution.
Dans la procedure afficher calendrier,
j'ai insere l'instruction suivante:
Calendrier(Calendar).Value = Now()
juste avant Calendrier.Sow

Encore merci pour votre aide.
Benoit

"crisben" a écrit :

Merci pour votre, mais je crois que dois faire une erreur de comprehension.
car je n'arrive pas a obtenir la date du jour.
J' utilise "Calendrier" que j'affiche à l'ecran en utilisant la procédur
suivante :

Sub AfficherCalendrier()
Calendrier.Show
End Sub.

Une fois le calendrier affiché j'utilise les proprietes de Calendar comme
décrit plus haut.
Donc je me demande a quel niveau je dois ecrire les differentes possibilités
que vous me donnez pour répondre à ma question.
Encore merci.
Benoit

"Jean Yves SÉVENO" a écrit :

> Bonjour.
>
> Calendar1.Today
>
> Mettre cette instruction dans la procédure événementielle UserForm_Activate.
>
> Cordialement.
>
> Jean Yves
>
>
> "crisben" a écrit dans le message de
> news:
> > Bonjour,
> >
> > Dans mon programme vba sous excel, j'utilise "Calendar", pour recuperer
> > une
> > date choisie par l'utilisateur (moi en loccurence) avec le format suivant
> > si
> > la date
> > choisie est par exemple le 28 mai 2007, 28 05 2007, dont voici le code:
> >
> > Private Sub Calendar1_Click()
> >
> > monjourtxt = Day(Calendar1)
> > Monmoistxt = Month(Calendar1)
> > Monanneetxt = Year(Calendar1)
> >
> > Select Case Month(Calendar1)
> > Case Is < 10
> > Monmoistxt = "0" & Month(Calendar1)
> > Case Else
> > Monmoistxt = Month(Calendar1)
> > End Select
> >
> > Select Case Day(Calendar1)
> > Case Is < 10
> > monjourtxt = "0" & Day(Calendar1)
> > Case Else
> > monjourtxt = Day(Calendar1)
> > End Select
> >
> > DateTxt = monjourtxt & " " & Monmoistxt & " " & Monanneetxt
> > DateNouvelleSoiree = DateTxt
> > 'Sheets("Accueil").Cells(20, 3) = MaDateTxt
> >
> > MsgBox Calendar1.Value
> > Unload Calendrier
> > End Sub
> >
> > Ma question est de savoir comment dois je faire pour qu' à l'affichage de
> > l'userform
> > "Calendrier", la date soit celle du jour ou date systeme,car actuellement
> > dès que le calendrier s'affiche, je tombe sur la date du 27/04/2005,valeur
> > que l'on retouve dans les propriétée de Calendar.
> >
> > Merci pour votre aide
>
>
>


Avatar
Gloops
Bonjour,


crisben a écrit, le 28/05/2007 22:32 :
J'ai trouve une solution.
Dans la procedure afficher calendrier,
j'ai insere l'instruction suivante:
Calendrier(Calendar).Value = Now()



ça vient d'où, cette syntaxe ?

Si comme j'ai compris le formulaire s'appelle Calendrier (à la place de
frmCalendrier, enfin bref) et le contrôle Calendar, ça pourrait donner
Calendrier.Calendar.Value = Now()

mais pas n'importe où.

juste avant Calendrier.Sow





Juste avant Calendrier.Show ?
Il y a eu un Calendrier.Hide, alors, puisqu'aucune erreur n'apparaît ?
Dans ce cas il faudrait développer.

Le plus simple serait de le faire après.
Je viens de tester :

Code du formulaire Calendrier :

Private Sub Form_Load()
Calendar1.Value = Date
End Sub

et ça marche.

L'autre jour je l'ai fait sous Access 95, et là, seule la répon se de
Jean-Yves Séveno permet d'initialiser le calendrier, tout ce qui est
fait dans Form_Load est ignoré.

Private Sub Form_Current()
ContrôleOLE0 = Date
End Sub

= = =

Je me retrouve là avec ContrôleOLE0 comme nom par défaut d u contrôle
calendrier : heureusement qu'on nous chante sur toutes les musiques
qu'il faut éviter les accents dans les noms de contrôles, enfin il est
vrai que j'utilise un truc pas tout neuf.

J'ai utilisé le calendrier version 7.
D'ailleurs, je n'ai pas compris pourquoi il apparaît avec les mois e n
Anglais, alors que Windows et Office sont installés en Français (VB6
aussi d'ailleurs).