OVH Cloud OVH Cloud

Insérer Calendrier dans InputBox ?

28 réponses
Avatar
Caroline L.
Re re-bonjour,

j'ai la tête pleine de questions. Comment insérer un calendrier dans le
InputBox suivant
(voir au milieu de Calendrier.Show) :

nouveaunom = InputBox("Indiquez le nouveau nom de la feuille",
Calendrier.Show, "Renommer la feuille")

Tous mes remerciements,

Caroline

8 réponses

1 2 3
Avatar
Caroline L.
Bonsoir MichDenis,

tu as raison, j'aurais dû fournir tout le code. Mais j'ai changé ma façon de
faire, donc j'ai enlevé le bout de code qui me posait un problème. Sauf que
maintenant j'ai un autre problème ! Haaaa, le vba !!

Sub date_en_b1
UserForm1.Show
End sub


et le code du userform est :
Private Sub Calendar1_DblClick()
[B1] = Me.Calendar1
UserForm1.Hide
End Sub

Je voudrais que l'usager ne puisse pas cliquer sur le X à droite pour fermer
la boîte (le userform). Je veux l'obliger à double-cliquer sur une date.
Est-ce très compliqué ?

Merci beaucoup

Caroline






"MichDenis" a écrit dans le message de news:

Bonsoir Caroline,

S.V.P donne tout le code de ta macro. Cette dernière est sûrement
déclenché par un événement.. Lequel ?



Salutations!



"Caroline L." a écrit dans le message de news:


Bonjour MichDenis,

excuse-moi de te répondre si tard (j'ai eu des problèmes dans le réception
des posts de hier à aujourd'hui). Je me suis abonné à msnews de
microsoft...

je vais voir si c'est mieux.

Finalement, c'est correct pour le calendrier en B1, j'ai utilisé ce que
LSteph m'a fourni. Mais j'ai un dernier petit problème. Peux-tu seulement
me

dire pourquoi dans ce qui suit, le msgbox apparaît 2
fois (une après l'autre) ??

'vérifier si B1 est vide
If Range("B1").Value = "" Then
MsgBox "Veuillez entrer la date dans le champ 'Du__________'" & vbCrLf &
"Format jj-mm-aa", vbOKOnly, "Lundi le..."
Range("B1").Select
Exit Sub
End If


Merci pour ton aide.

Caroline



"MichDenis" a écrit dans le message de news:


Bonsoir Caroline,

Ce contrôle DTpicker n'existe pas dans la version Excel 2000 ... ce
n'est


qu'à partir de la version excel 2002.

Sauf que tu peux peut être le récupérer dans des classeurs à télécharger
sur le site de Misange. Il est facilement récupérable sur

Internet.


Salutations!




"Caroline L." a écrit dans le message de news:
bs_4e.161250$

Re-bonjour jps,

oui je vois l'icone du marteau (boîte à outils) mais il n'y a pas de
liste


Dans les outils, contrôles supplémentaires ? non, je ne vois rien du
nom


de
Data and Time Picker. J'ai Excel 2000. Est-ce Data source controle 9.0
?





"jps" a écrit dans le message de news:

bonjour caroline
si denis était dans le coin (mais il avait un apéro ce soir qui a dû
duré


un
peu plus que prévu) il te dirait de t'intéresser à un petit truc du
nom



de
Data and Time Picker (DT Picker pour les rapides) ; ah! tu vas me
demander


où il se trouve, bien sûr : tu cliques sur l'icône avec les outils (tu
vois

le marteau, oui? bon mais ne cherche pas la faucille, ce n'est pas
biloff


qui a pondu mais bilou) et dans la liste, tu vas découvrir ce contrôle
(dans

la série des Microsoft...), tu vas le mettre dans ta feuille et tu vas
avoir

un joli calendrier...et si tu veux le faire parler, tu vas voir dans
ses



propriétés
jps

"Caroline L." a écrit dans le message de
news:_PY4e.160414$
Mais de toute façon, si tu regardes ma réponse précédente (celle






je
répond à anonymousA)
regardes mon autre réponse à celui là précisément.

je ne vois pas... ?


[b1]=format(Now,"dd-mmm-yyyy")
est-ce que cela répond à un autre post qui oblige l'usager à saisir

en




B1
une date ? Si oui, ma question du calendrier n'a rien à voir avec
la




question d'obliger la saisie en B1.
Bref, je ne comprends pas ce que tu veux dire.

Tu peux faire idem avec l controlcalendar ...dans userform

Private Sub Calendar1_DblClick()
[b1] = Me.Calendar1
UserForm1.Hide
End Sub
J'ai insérer un calendrier dans le userform1. Ensuite il faut

insérer




la
procédure où ? Et qu'est-ce que cela fait au juste ? Excuse-moi
mais




je
suis un peu perdu (peut-être pcq je ne connait pas le
Calendar1_DblClick.



merci de m'aider
Caroline







"LSteph" a écrit dans le message de news:

As-tu une idée
...oui mais pas dans inputbox , dans un userform

Mais de toute façon, si tu regardes ma réponse précédente (celle






je
répond à anonymousA)
regardes mon autre réponse à celui là précisément.

...
alors sans calendrier:

[b1]=format(Now,"dd-mmm-yyyy")

Tu peux faire idem avec l controlcalendar ...dans userform

Private Sub Calendar1_DblClick()
[b1] = Me.Calendar1
UserForm1.Hide
End Sub


"Caroline L." a écrit dans le message de
news:




ueY4e.160067$
Re-bonjour LSteph,

oui merci, j'ai regardé le lien. Le problème c'est que je ne
peux






pas
ouvrir
des fichiers zip.
Mais de toute façon, si tu regardes ma réponse précédente (celle






je
répond à anonymousA), je disais que je ne veux pas gérer des
dates,





je
veux
seulement le calendrier qui s'affiche lorsque l'usager entre
lui-même




la
date.

As-tu une idée comment faire appaître le calendrier dans la
boîte






dialogue
du inputbox ?
Sinon, est-il possible d'ouvrir 2 boîtes dialogues (le
calendrier






en
haut
à
droite et le inputbox au centre un peu plus bas et tout se ferme
lorsque



l'usager saisi sa date dans l'endroit prévu ?)

'renommer la feuille en entrant la date appropriée
nouveaunom = InputBox("Indiquez le nouveau nom de la feuille",
"Renommer



la
feuille")


Caroline


"LSteph" a écrit dans le message de news:

ReReBonsoir Caroline,
outre le controlcalendar disponible pour excel dans
certaines versions d'office car en réalité il appartient à
Access.







Va sur le site Frédéric Sigonneau à calendriers tu trouvera
plein







de
choses
:
http://frederic.sigonneau.free.fr/Calendriers.htm

'lSteph

"Caroline L." a écrit dans le message
de







news:
QkX4e.158932$
Re re-bonjour,

j'ai la tête pleine de questions. Comment insérer un
calendrier








dans
le
InputBox suivant
(voir au milieu de Calendrier.Show) :

nouveaunom = InputBox("Indiquez le nouveau nom de la
feuille",








Calendrier.Show, "Renommer la feuille")

Tous mes remerciements,

Caroline

































Avatar
MichDenis
Bonsoir Caroline,

Dans le haut de ton formulaire, tu déclares une variable :

Dim LaDate as String

Dans la procédure suivante :
Dim LaDate As String

'----------------------------
Private Sub Calendar1_DblClick()

LaDate = Me.Calendar1.Value
[B1].NumberFormat = "DD/MM/YYYY"
[B1] = LaDate
UserForm1.Hide

End Sub
'----------------------------

Ce qui suit empêchera le formulaire de se fermer par la croix si la variable LaDate ne contient pas une valeur qui est issue d'un
double-clique de l'usager sur une date du calendrier.

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)

If CloseMode = 0 And IsDate(LaDate) = False Then
Cancel = True
End If

End Sub
'----------------------------

Et pour finir, il manque un truc à ta procédure, comment l'ouverture de ton formulaire est-il provoquée ? Dans cet événement, tu
dois ajouter à ta procédure, au moins une ligne de code : Remise à "" la variable LaDate et personnellement, je m'assurerais que la
cellule B1 est vide pour forcer l'usager à saisir à nouveau une nouvelle date.

LaDate = ""
Range("B1") = ""


Salutations!







"Caroline L." a écrit dans le message de news:
Bonsoir MichDenis,

tu as raison, j'aurais dû fournir tout le code. Mais j'ai changé ma façon de
faire, donc j'ai enlevé le bout de code qui me posait un problème. Sauf que
maintenant j'ai un autre problème ! Haaaa, le vba !!

Sub date_en_b1
UserForm1.Show
End sub


et le code du userform est :
Private Sub Calendar1_DblClick()
[B1] = Me.Calendar1
UserForm1.Hide
End Sub

Je voudrais que l'usager ne puisse pas cliquer sur le X à droite pour fermer
la boîte (le userform). Je veux l'obliger à double-cliquer sur une date.
Est-ce très compliqué ?

Merci beaucoup

Caroline






"MichDenis" a écrit dans le message de news:

Bonsoir Caroline,

S.V.P donne tout le code de ta macro. Cette dernière est sûrement
déclenché par un événement.. Lequel ?



Salutations!



"Caroline L." a écrit dans le message de news:


Bonjour MichDenis,

excuse-moi de te répondre si tard (j'ai eu des problèmes dans le réception
des posts de hier à aujourd'hui). Je me suis abonné à msnews de
microsoft...

je vais voir si c'est mieux.

Finalement, c'est correct pour le calendrier en B1, j'ai utilisé ce que
LSteph m'a fourni. Mais j'ai un dernier petit problème. Peux-tu seulement
me

dire pourquoi dans ce qui suit, le msgbox apparaît 2
fois (une après l'autre) ??

'vérifier si B1 est vide
If Range("B1").Value = "" Then
MsgBox "Veuillez entrer la date dans le champ 'Du__________'" & vbCrLf &
"Format jj-mm-aa", vbOKOnly, "Lundi le..."
Range("B1").Select
Exit Sub
End If


Merci pour ton aide.

Caroline



"MichDenis" a écrit dans le message de news:


Bonsoir Caroline,

Ce contrôle DTpicker n'existe pas dans la version Excel 2000 ... ce
n'est


qu'à partir de la version excel 2002.

Sauf que tu peux peut être le récupérer dans des classeurs à télécharger
sur le site de Misange. Il est facilement récupérable sur

Internet.


Salutations!




"Caroline L." a écrit dans le message de news:
bs_4e.161250$

Re-bonjour jps,

oui je vois l'icone du marteau (boîte à outils) mais il n'y a pas de
liste


Dans les outils, contrôles supplémentaires ? non, je ne vois rien du
nom


de
Data and Time Picker. J'ai Excel 2000. Est-ce Data source controle 9.0
?





"jps" a écrit dans le message de news:

bonjour caroline
si denis était dans le coin (mais il avait un apéro ce soir qui a dû
duré


un
peu plus que prévu) il te dirait de t'intéresser à un petit truc du
nom



de
Data and Time Picker (DT Picker pour les rapides) ; ah! tu vas me
demander


où il se trouve, bien sûr : tu cliques sur l'icône avec les outils (tu
vois

le marteau, oui? bon mais ne cherche pas la faucille, ce n'est pas
biloff


qui a pondu mais bilou) et dans la liste, tu vas découvrir ce contrôle
(dans

la série des Microsoft...), tu vas le mettre dans ta feuille et tu vas
avoir

un joli calendrier...et si tu veux le faire parler, tu vas voir dans
ses



propriétés
jps

"Caroline L." a écrit dans le message de
news:_PY4e.160414$
Mais de toute façon, si tu regardes ma réponse précédente (celle






je
répond à anonymousA)
regardes mon autre réponse à celui là précisément.

je ne vois pas... ?


[b1]=format(Now,"dd-mmm-yyyy")
est-ce que cela répond à un autre post qui oblige l'usager à saisir

en




B1
une date ? Si oui, ma question du calendrier n'a rien à voir avec
la




question d'obliger la saisie en B1.
Bref, je ne comprends pas ce que tu veux dire.

Tu peux faire idem avec l controlcalendar ...dans userform

Private Sub Calendar1_DblClick()
[b1] = Me.Calendar1
UserForm1.Hide
End Sub
J'ai insérer un calendrier dans le userform1. Ensuite il faut

insérer




la
procédure où ? Et qu'est-ce que cela fait au juste ? Excuse-moi
mais




je
suis un peu perdu (peut-être pcq je ne connait pas le
Calendar1_DblClick.



merci de m'aider
Caroline







"LSteph" a écrit dans le message de news:

As-tu une idée
...oui mais pas dans inputbox , dans un userform

Mais de toute façon, si tu regardes ma réponse précédente (celle






je
répond à anonymousA)
regardes mon autre réponse à celui là précisément.

...
alors sans calendrier:

[b1]=format(Now,"dd-mmm-yyyy")

Tu peux faire idem avec l controlcalendar ...dans userform

Private Sub Calendar1_DblClick()
[b1] = Me.Calendar1
UserForm1.Hide
End Sub


"Caroline L." a écrit dans le message de
news:




ueY4e.160067$
Re-bonjour LSteph,

oui merci, j'ai regardé le lien. Le problème c'est que je ne
peux






pas
ouvrir
des fichiers zip.
Mais de toute façon, si tu regardes ma réponse précédente (celle






je
répond à anonymousA), je disais que je ne veux pas gérer des
dates,





je
veux
seulement le calendrier qui s'affiche lorsque l'usager entre
lui-même




la
date.

As-tu une idée comment faire appaître le calendrier dans la
boîte






dialogue
du inputbox ?
Sinon, est-il possible d'ouvrir 2 boîtes dialogues (le
calendrier






en
haut
à
droite et le inputbox au centre un peu plus bas et tout se ferme
lorsque



l'usager saisi sa date dans l'endroit prévu ?)

'renommer la feuille en entrant la date appropriée
nouveaunom = InputBox("Indiquez le nouveau nom de la feuille",
"Renommer



la
feuille")


Caroline


"LSteph" a écrit dans le message de news:

ReReBonsoir Caroline,
outre le controlcalendar disponible pour excel dans
certaines versions d'office car en réalité il appartient à
Access.







Va sur le site Frédéric Sigonneau à calendriers tu trouvera
plein







de
choses
:
http://frederic.sigonneau.free.fr/Calendriers.htm

'lSteph

"Caroline L." a écrit dans le message
de







news:
QkX4e.158932$
Re re-bonjour,

j'ai la tête pleine de questions. Comment insérer un
calendrier








dans
le
InputBox suivant
(voir au milieu de Calendrier.Show) :

nouveaunom = InputBox("Indiquez le nouveau nom de la
feuille",








Calendrier.Show, "Renommer la feuille")

Tous mes remerciements,

Caroline

































Avatar
Caroline L.
je l'ai inséré dans ma macro. merci :o)


"LSteph" a écrit dans le message de news:

..suite
juste au cas où....
ajouter qd même dans un module standard ou l'appeler dans ta macro

Sub afficheUf()

userform1.show

end sub


"LSteph" a écrit dans le message de news:

Bonjour CarolineL,

Effectivement , je commençais à me dire que tu ne vois que la moitié des
messages:
(tu devrais essayer le serveur msnews.microsoft.com )

Bref, je ne comprends pas ce que tu veux dire.
Si le but de ton calendrier est de faire que l'utilisateur n'ait pas à

se


prendre la tête pour trouver la date du jour,
alors pas besoin de calendrier d'où cette proposition de remplavcer tout
ce dispositif par cette instruction:
[b1]=format(Now,"dd-mmm-yyyy")
ici b1 est un exemple .

J'ai insérer un calendrier dans le userform1. Ensuite il faut insérer
la



procédure où ?...
Private Sub Calendar1_DblClick()

[b1] = Me.Calendar1
UserForm1.Hide
End Sub
se met dans le code du Userform(clicdroit dessus, code )

... Et qu'est-ce que cela fait au juste ?
Cela met la date sur laquelle on a dblcliqué dans la cellule choisie

ici
[b1] = Me.Calendar1
en exemple pourraît être
activecell= Me.Calendar1

...
Je t'ai aussi donné l'adresse du site de FS ou il existe un Cal2.Fr tout
fait
et bien d'autres exemples qui t'intéresseront.

Quelle raison t'empêcherait donc d'ouvrir les fichiers Zip?

Si ton OS ne le permet pas.
Il y a même des logiciels gratuits sur le net ou sinon voir règlage de
ton


parefeu ou autres paramêtres de sécurité .
A moins que le cas échéant plus embêtant devoir consulter ton
administrateur réseau.

A bientôt.

lSteph



"Caroline L." a écrit dans le message de news:
_PY4e.160414$
Mais de toute façon, si tu regardes ma réponse précédente (celle où
je





répond à anonymousA)
regardes mon autre réponse à celui là précisément.

je ne vois pas... ?


[b1]=format(Now,"dd-mmm-yyyy")
est-ce que cela répond à un autre post qui oblige l'usager à saisir en

B1



une date ? Si oui, ma question du calendrier n'a rien à voir avec la
question d'obliger la saisie en B1.
Bref, je ne comprends pas ce que tu veux dire.

Tu peux faire idem avec l controlcalendar ...dans userform

Private Sub Calendar1_DblClick()
[b1] = Me.Calendar1
UserForm1.Hide
End Sub
J'ai insérer un calendrier dans le userform1. Ensuite il faut insérer

la



procédure où ? Et qu'est-ce que cela fait au juste ? Excuse-moi mais
je



suis un peu perdu (peut-être pcq je ne connait pas le
Calendar1_DblClick.




merci de m'aider
Caroline







"LSteph" a écrit dans le message de news:

As-tu une idée
...oui mais pas dans inputbox , dans un userform

Mais de toute façon, si tu regardes ma réponse précédente (celle où
je





répond à anonymousA)
regardes mon autre réponse à celui là précisément.

...
alors sans calendrier:

[b1]=format(Now,"dd-mmm-yyyy")

Tu peux faire idem avec l controlcalendar ...dans userform

Private Sub Calendar1_DblClick()
[b1] = Me.Calendar1
UserForm1.Hide
End Sub


"Caroline L." a écrit dans le message de news:
ueY4e.160067$
Re-bonjour LSteph,

oui merci, j'ai regardé le lien. Le problème c'est que je ne peux
pas





ouvrir
des fichiers zip.
Mais de toute façon, si tu regardes ma réponse précédente (celle où
je





répond à anonymousA), je disais que je ne veux pas gérer des dates,
je





veux
seulement le calendrier qui s'affiche lorsque l'usager entre
lui-même





la
date.

As-tu une idée comment faire appaître le calendrier dans la boîte
dialogue


du inputbox ?
Sinon, est-il possible d'ouvrir 2 boîtes dialogues (le calendrier en
haut


à
droite et le inputbox au centre un peu plus bas et tout se ferme
lorsque
l'usager saisi sa date dans l'endroit prévu ?)

'renommer la feuille en entrant la date appropriée
nouveaunom = InputBox("Indiquez le nouveau nom de la feuille",
"Renommer
la
feuille")


Caroline


"LSteph" a écrit dans le message de news:

ReReBonsoir Caroline,
outre le controlcalendar disponible pour excel dans
certaines versions d'office car en réalité il appartient à Access.

Va sur le site Frédéric Sigonneau à calendriers tu trouvera plein
de






choses
:
http://frederic.sigonneau.free.fr/Calendriers.htm

'lSteph

"Caroline L." a écrit dans le message de
news:
QkX4e.158932$
Re re-bonjour,

j'ai la tête pleine de questions. Comment insérer un calendrier
dans
le




InputBox suivant
(voir au milieu de Calendrier.Show) :

nouveaunom = InputBox("Indiquez le nouveau nom de la feuille",
Calendrier.Show, "Renommer la feuille")

Tous mes remerciements,

Caroline




























Avatar
Caroline L.
Bonjour MichDenis,

Parfait, tout marche à merveille. Merci beaucoup à toi. C'est intéressant,
je commence à découvrir les userform (un autre univers à apprendre).
En passant, j'ai créé un autre userform (userform2) et il me manque le bout
de code pour le
Private Sub TextBox1_Change(). Peux-tu m'aider svp avec cette partie ?

La donnée saisie dans le TextBox1 est en fait le futur nom de la feuille
(qui vient tout juste d'être créée à partir d'une macro-->voir plus bas).
La macro se poursuit en demandant à l'usager de renommer la feuille (donc la
feuille Gestion2 doit être renommée).

Présentement, c'est avec un inputbox que la feuille est renommée mais je
voudrais que ce soit un userform à la place mais je n'arrive pas à "lié" la
saisie fait dans le textbox avec le "renommer feuille". Exemple : si je
saisi "Production" dans le textbox1, la nouvelle feuille portera le nouveau
nom de "Production".
Dans la macro du bas, lorsque le système demandait à l'usager de renommer la
feuille Gestion2 pour un nouveau nom, il ne pouvait pas laissé tomber, il
devait absolument renommer celle-ci différement de Gestion2. Et bien, je
désire faire la même chose avec le userform.
Tu comprends ? Merci beaucoup.
Caroline


Sub meli_melo

'vérifier si la protection classeur est activée
If ActiveWorkbook.ProtectStructure = True Then
MsgBox "Veuillez enlever la protection du classeur"
Exit Sub
Else


'empêcher ESC
Application.EnableCancelKey = xlDisabled

On Error Resume Next
Application.DisplayAlerts = False


Sheets("Gestion").Visible = True

'ajouter les dim
Dim bongarçonoubonnefille As Boolean
Dim nomactuel As String, nouveaunom As String


Worksheets("Gestion").Copy After:=Sheets(Sheets.Count)
ActiveSheet.Name = "Gestion 2"

Sheets("Gestion 2").Move After:=Sheets(Sheets.Count)
Sheets("Gestion 2").Select

nomactuel = "Gestion 2"

Do

-----------------> nouveaunom = InputBox("Indiquez le nom de cette nouvelle
feuille (champ au bas)", "Nommez la feuille")


'textbox : demande à l'usager de renommer la nouvelle feuille
UserForm2.Show


If nouveaunom = nomactuel Then
MsgBox "Modifiez le nom de de la feuille svp."
bongarçonoubonnefille = False
ElseIf nouveaunom = "" Then
bongarçonoubonnefille = False
MsgBox "Modifiez le nom de de la feuille svp."
Else
bongarçonoubonnefille = True
End If
Loop Until bongarçonoubonnefille
ActiveSheet.Name = nouveaunom

Application.DisplayAlerts = True
Range("B1").Select

'arrêt de cancel ESC
Application.EnableCancelKey = xlInterrupt


Sheets("Gestion").Visible = xlSheetVeryHidden


'double-clique sur date du calendrier (date pour cellule B1)
UserForm1.Show


End Sub



















"MichDenis" a écrit dans le message de news:
OVoRkO#
Bonsoir Caroline,

Dans le haut de ton formulaire, tu déclares une variable :

Dim LaDate as String

Dans la procédure suivante :
Dim LaDate As String

'----------------------------
Private Sub Calendar1_DblClick()

LaDate = Me.Calendar1.Value
[B1].NumberFormat = "DD/MM/YYYY"
[B1] = LaDate
UserForm1.Hide

End Sub
'----------------------------

Ce qui suit empêchera le formulaire de se fermer par la croix si la
variable LaDate ne contient pas une valeur qui est issue d'un

double-clique de l'usager sur une date du calendrier.

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)

If CloseMode = 0 And IsDate(LaDate) = False Then
Cancel = True
End If

End Sub
'----------------------------

Et pour finir, il manque un truc à ta procédure, comment l'ouverture de
ton formulaire est-il provoquée ? Dans cet événement, tu

dois ajouter à ta procédure, au moins une ligne de code : Remise à "" la
variable LaDate et personnellement, je m'assurerais que la

cellule B1 est vide pour forcer l'usager à saisir à nouveau une nouvelle
date.


LaDate = ""
Range("B1") = ""


Salutations!







"Caroline L." a écrit dans le message de news:


Bonsoir MichDenis,

tu as raison, j'aurais dû fournir tout le code. Mais j'ai changé ma façon
de

faire, donc j'ai enlevé le bout de code qui me posait un problème. Sauf
que

maintenant j'ai un autre problème ! Haaaa, le vba !!

Sub date_en_b1
UserForm1.Show
End sub


et le code du userform est :
Private Sub Calendar1_DblClick()
[B1] = Me.Calendar1
UserForm1.Hide
End Sub

Je voudrais que l'usager ne puisse pas cliquer sur le X à droite pour
fermer

la boîte (le userform). Je veux l'obliger à double-cliquer sur une date.
Est-ce très compliqué ?

Merci beaucoup

Caroline






"MichDenis" a écrit dans le message de news:

Bonsoir Caroline,

S.V.P donne tout le code de ta macro. Cette dernière est sûrement
déclenché par un événement.. Lequel ?



Salutations!



"Caroline L." a écrit dans le message de news:


Bonjour MichDenis,

excuse-moi de te répondre si tard (j'ai eu des problèmes dans le
réception


des posts de hier à aujourd'hui). Je me suis abonné à msnews de
microsoft...

je vais voir si c'est mieux.

Finalement, c'est correct pour le calendrier en B1, j'ai utilisé ce que
LSteph m'a fourni. Mais j'ai un dernier petit problème. Peux-tu
seulement


me
dire pourquoi dans ce qui suit, le msgbox apparaît 2
fois (une après l'autre) ??

'vérifier si B1 est vide
If Range("B1").Value = "" Then
MsgBox "Veuillez entrer la date dans le champ 'Du__________'" & vbCrLf &
"Format jj-mm-aa", vbOKOnly, "Lundi le..."
Range("B1").Select
Exit Sub
End If


Merci pour ton aide.

Caroline



"MichDenis" a écrit dans le message de news:


Bonsoir Caroline,

Ce contrôle DTpicker n'existe pas dans la version Excel 2000 ... ce
n'est


qu'à partir de la version excel 2002.

Sauf que tu peux peut être le récupérer dans des classeurs à
télécharger



sur le site de Misange. Il est facilement récupérable sur
Internet.


Salutations!




"Caroline L." a écrit dans le message de news:
bs_4e.161250$

Re-bonjour jps,

oui je vois l'icone du marteau (boîte à outils) mais il n'y a pas de
liste


Dans les outils, contrôles supplémentaires ? non, je ne vois rien du
nom


de
Data and Time Picker. J'ai Excel 2000. Est-ce Data source controle
9.0



?



"jps" a écrit dans le message de news:

bonjour caroline
si denis était dans le coin (mais il avait un apéro ce soir qui a dû
duré


un
peu plus que prévu) il te dirait de t'intéresser à un petit truc du
nom



de
Data and Time Picker (DT Picker pour les rapides) ; ah! tu vas me
demander


où il se trouve, bien sûr : tu cliques sur l'icône avec les outils
(tu




vois
le marteau, oui? bon mais ne cherche pas la faucille, ce n'est pas
biloff


qui a pondu mais bilou) et dans la liste, tu vas découvrir ce
contrôle




(dans
la série des Microsoft...), tu vas le mettre dans ta feuille et tu
vas




avoir
un joli calendrier...et si tu veux le faire parler, tu vas voir dans
ses



propriétés
jps

"Caroline L." a écrit dans le message de
news:_PY4e.160414$
Mais de toute façon, si tu regardes ma réponse précédente
(celle








je
répond à anonymousA)
regardes mon autre réponse à celui là précisément.

je ne vois pas... ?


[b1]=format(Now,"dd-mmm-yyyy")
est-ce que cela répond à un autre post qui oblige l'usager à

saisir





en
B1
une date ? Si oui, ma question du calendrier n'a rien à voir avec
la




question d'obliger la saisie en B1.
Bref, je ne comprends pas ce que tu veux dire.

Tu peux faire idem avec l controlcalendar ...dans userform

Private Sub Calendar1_DblClick()
[b1] = Me.Calendar1
UserForm1.Hide
End Sub
J'ai insérer un calendrier dans le userform1. Ensuite il faut

insérer




la
procédure où ? Et qu'est-ce que cela fait au juste ? Excuse-moi
mais




je
suis un peu perdu (peut-être pcq je ne connait pas le
Calendar1_DblClick.



merci de m'aider
Caroline







"LSteph" a écrit dans le message de news:

As-tu une idée
...oui mais pas dans inputbox , dans un userform

Mais de toute façon, si tu regardes ma réponse précédente
(celle








je
répond à anonymousA)
regardes mon autre réponse à celui là précisément.

...
alors sans calendrier:

[b1]=format(Now,"dd-mmm-yyyy")

Tu peux faire idem avec l controlcalendar ...dans userform

Private Sub Calendar1_DblClick()
[b1] = Me.Calendar1
UserForm1.Hide
End Sub


"Caroline L." a écrit dans le message de
news:




ueY4e.160067$
Re-bonjour LSteph,

oui merci, j'ai regardé le lien. Le problème c'est que je ne
peux






pas
ouvrir
des fichiers zip.
Mais de toute façon, si tu regardes ma réponse précédente
(celle








je
répond à anonymousA), je disais que je ne veux pas gérer des
dates,





je
veux
seulement le calendrier qui s'affiche lorsque l'usager entre
lui-même




la
date.

As-tu une idée comment faire appaître le calendrier dans la
boîte






dialogue
du inputbox ?
Sinon, est-il possible d'ouvrir 2 boîtes dialogues (le
calendrier






en
haut
à
droite et le inputbox au centre un peu plus bas et tout se
ferme







lorsque
l'usager saisi sa date dans l'endroit prévu ?)

'renommer la feuille en entrant la date appropriée
nouveaunom = InputBox("Indiquez le nouveau nom de la feuille",
"Renommer



la
feuille")


Caroline


"LSteph" a écrit dans le message de
news:








ReReBonsoir Caroline,
outre le controlcalendar disponible pour excel dans
certaines versions d'office car en réalité il appartient à
Access.







Va sur le site Frédéric Sigonneau à calendriers tu trouvera
plein







de
choses
:
http://frederic.sigonneau.free.fr/Calendriers.htm

'lSteph

"Caroline L." a écrit dans le message
de







news:
QkX4e.158932$
Re re-bonjour,

j'ai la tête pleine de questions. Comment insérer un
calendrier








dans
le
InputBox suivant
(voir au milieu de Calendrier.Show) :

nouveaunom = InputBox("Indiquez le nouveau nom de la
feuille",








Calendrier.Show, "Renommer la feuille")

Tous mes remerciements,

Caroline






































Avatar
jps
moi, non, caroline si ce n'est que ton usine sent le gaz d'ici ; certes, il
y a un fort vent d'ouest mais quand même...
jps

"Caroline L." a écrit dans le message de
news:uKZdw$
Bonjour MichDenis,
Tu comprends ? Merci beaucoup.
Caroline


Sub meli_melo

'vérifier si la protection classeur est activée
If ActiveWorkbook.ProtectStructure = True Then
MsgBox "Veuillez enlever la protection du classeur"
Exit Sub
Else


'empêcher ESC
Application.EnableCancelKey = xlDisabled

On Error Resume Next
Application.DisplayAlerts = False


Sheets("Gestion").Visible = True

'ajouter les dim
Dim bongarçonoubonnefille As Boolean
Dim nomactuel As String, nouveaunom As String


Worksheets("Gestion").Copy After:=Sheets(Sheets.Count)
ActiveSheet.Name = "Gestion 2"

Sheets("Gestion 2").Move After:=Sheets(Sheets.Count)
Sheets("Gestion 2").Select

nomactuel = "Gestion 2"

Do

-----------------> nouveaunom = InputBox("Indiquez le nom de cette
nouvelle

feuille (champ au bas)", "Nommez la feuille")


'textbox : demande à l'usager de renommer la nouvelle feuille
UserForm2.Show


If nouveaunom = nomactuel Then
MsgBox "Modifiez le nom de de la feuille svp."
bongarçonoubonnefille = False
ElseIf nouveaunom = "" Then
bongarçonoubonnefille = False
MsgBox "Modifiez le nom de de la feuille svp."
Else
bongarçonoubonnefille = True
End If
Loop Until bongarçonoubonnefille
ActiveSheet.Name = nouveaunom

Application.DisplayAlerts = True
Range("B1").Select

'arrêt de cancel ESC
Application.EnableCancelKey = xlInterrupt


Sheets("Gestion").Visible = xlSheetVeryHidden


'double-clique sur date du calendrier (date pour cellule B1)
UserForm1.Show


End Sub



















"MichDenis" a écrit dans le message de news:
OVoRkO#
Bonsoir Caroline,

Dans le haut de ton formulaire, tu déclares une variable :

Dim LaDate as String

Dans la procédure suivante :
Dim LaDate As String

'----------------------------
Private Sub Calendar1_DblClick()

LaDate = Me.Calendar1.Value
[B1].NumberFormat = "DD/MM/YYYY"
[B1] = LaDate
UserForm1.Hide

End Sub
'----------------------------

Ce qui suit empêchera le formulaire de se fermer par la croix si la
variable LaDate ne contient pas une valeur qui est issue d'un

double-clique de l'usager sur une date du calendrier.

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)

If CloseMode = 0 And IsDate(LaDate) = False Then
Cancel = True
End If

End Sub
'----------------------------

Et pour finir, il manque un truc à ta procédure, comment l'ouverture de
ton formulaire est-il provoquée ? Dans cet événement, tu

dois ajouter à ta procédure, au moins une ligne de code : Remise à "" la
variable LaDate et personnellement, je m'assurerais que la

cellule B1 est vide pour forcer l'usager à saisir à nouveau une nouvelle
date.


LaDate = ""
Range("B1") = ""


Salutations!







"Caroline L." a écrit dans le message de news:


Bonsoir MichDenis,

tu as raison, j'aurais dû fournir tout le code. Mais j'ai changé ma
façon


de
faire, donc j'ai enlevé le bout de code qui me posait un problème. Sauf
que

maintenant j'ai un autre problème ! Haaaa, le vba !!

Sub date_en_b1
UserForm1.Show
End sub


et le code du userform est :
Private Sub Calendar1_DblClick()
[B1] = Me.Calendar1
UserForm1.Hide
End Sub

Je voudrais que l'usager ne puisse pas cliquer sur le X à droite pour
fermer

la boîte (le userform). Je veux l'obliger à double-cliquer sur une date.
Est-ce très compliqué ?

Merci beaucoup

Caroline






"MichDenis" a écrit dans le message de news:

Bonsoir Caroline,

S.V.P donne tout le code de ta macro. Cette dernière est sûrement
déclenché par un événement.. Lequel ?



Salutations!



"Caroline L." a écrit dans le message de news:


Bonjour MichDenis,

excuse-moi de te répondre si tard (j'ai eu des problèmes dans le
réception


des posts de hier à aujourd'hui). Je me suis abonné à msnews de
microsoft...

je vais voir si c'est mieux.

Finalement, c'est correct pour le calendrier en B1, j'ai utilisé ce
que



LSteph m'a fourni. Mais j'ai un dernier petit problème. Peux-tu
seulement


me
dire pourquoi dans ce qui suit, le msgbox apparaît 2
fois (une après l'autre) ??

'vérifier si B1 est vide
If Range("B1").Value = "" Then
MsgBox "Veuillez entrer la date dans le champ 'Du__________'" & vbCrLf
&



"Format jj-mm-aa", vbOKOnly, "Lundi le..."
Range("B1").Select
Exit Sub
End If


Merci pour ton aide.

Caroline



"MichDenis" a écrit dans le message de news:


Bonsoir Caroline,

Ce contrôle DTpicker n'existe pas dans la version Excel 2000 ... ce
n'est


qu'à partir de la version excel 2002.

Sauf que tu peux peut être le récupérer dans des classeurs à
télécharger



sur le site de Misange. Il est facilement récupérable sur
Internet.


Salutations!




"Caroline L." a écrit dans le message de
news:




bs_4e.161250$
Re-bonjour jps,

oui je vois l'icone du marteau (boîte à outils) mais il n'y a pas de
liste


Dans les outils, contrôles supplémentaires ? non, je ne vois rien
du




nom
de
Data and Time Picker. J'ai Excel 2000. Est-ce Data source controle
9.0



?



"jps" a écrit dans le message de news:

bonjour caroline
si denis était dans le coin (mais il avait un apéro ce soir qui a






duré
un
peu plus que prévu) il te dirait de t'intéresser à un petit truc
du





nom
de
Data and Time Picker (DT Picker pour les rapides) ; ah! tu vas me
demander


où il se trouve, bien sûr : tu cliques sur l'icône avec les outils
(tu




vois
le marteau, oui? bon mais ne cherche pas la faucille, ce n'est pas
biloff


qui a pondu mais bilou) et dans la liste, tu vas découvrir ce
contrôle




(dans
la série des Microsoft...), tu vas le mettre dans ta feuille et tu
vas




avoir
un joli calendrier...et si tu veux le faire parler, tu vas voir
dans





ses
propriétés
jps

"Caroline L." a écrit dans le message de
news:_PY4e.160414$
Mais de toute façon, si tu regardes ma réponse précédente
(celle








je
répond à anonymousA)
regardes mon autre réponse à celui là précisément.

je ne vois pas... ?


[b1]=format(Now,"dd-mmm-yyyy")
est-ce que cela répond à un autre post qui oblige l'usager à

saisir





en
B1
une date ? Si oui, ma question du calendrier n'a rien à voir
avec






la
question d'obliger la saisie en B1.
Bref, je ne comprends pas ce que tu veux dire.

Tu peux faire idem avec l controlcalendar ...dans userform

Private Sub Calendar1_DblClick()
[b1] = Me.Calendar1
UserForm1.Hide
End Sub
J'ai insérer un calendrier dans le userform1. Ensuite il faut

insérer




la
procédure où ? Et qu'est-ce que cela fait au juste ? Excuse-moi
mais




je
suis un peu perdu (peut-être pcq je ne connait pas le
Calendar1_DblClick.



merci de m'aider
Caroline







"LSteph" a écrit dans le message de news:

As-tu une idée
...oui mais pas dans inputbox , dans un userform

Mais de toute façon, si tu regardes ma réponse précédente
(celle








je
répond à anonymousA)
regardes mon autre réponse à celui là précisément.

...
alors sans calendrier:

[b1]=format(Now,"dd-mmm-yyyy")

Tu peux faire idem avec l controlcalendar ...dans userform

Private Sub Calendar1_DblClick()
[b1] = Me.Calendar1
UserForm1.Hide
End Sub


"Caroline L." a écrit dans le message
de







news:
ueY4e.160067$
Re-bonjour LSteph,

oui merci, j'ai regardé le lien. Le problème c'est que je ne
peux






pas
ouvrir
des fichiers zip.
Mais de toute façon, si tu regardes ma réponse précédente
(celle








je
répond à anonymousA), je disais que je ne veux pas gérer des
dates,





je
veux
seulement le calendrier qui s'affiche lorsque l'usager entre
lui-même




la
date.

As-tu une idée comment faire appaître le calendrier dans la
boîte






dialogue
du inputbox ?
Sinon, est-il possible d'ouvrir 2 boîtes dialogues (le
calendrier






en
haut
à
droite et le inputbox au centre un peu plus bas et tout se
ferme







lorsque
l'usager saisi sa date dans l'endroit prévu ?)

'renommer la feuille en entrant la date appropriée
nouveaunom = InputBox("Indiquez le nouveau nom de la
feuille",








"Renommer
la
feuille")


Caroline


"LSteph" a écrit dans le message de
news:








ReReBonsoir Caroline,
outre le controlcalendar disponible pour excel dans
certaines versions d'office car en réalité il appartient à
Access.







Va sur le site Frédéric Sigonneau à calendriers tu trouvera
plein







de
choses
:
http://frederic.sigonneau.free.fr/Calendriers.htm

'lSteph

"Caroline L." a écrit dans le
message









de
news:
QkX4e.158932$
Re re-bonjour,

j'ai la tête pleine de questions. Comment insérer un
calendrier








dans
le
InputBox suivant
(voir au milieu de Calendrier.Show) :

nouveaunom = InputBox("Indiquez le nouveau nom de la
feuille",








Calendrier.Show, "Renommer la feuille")

Tous mes remerciements,

Caroline










































Avatar
Caroline L.
Bonjour jps,

moi, non, caroline si ce n'est que ...
Toi non ?? dans le sens que tu ne comprends pas ce que je veux dire ?


Dans ma macro la feuille "Gestion" est clônée et appelée "Gestion2".
Ensuite, un inputbox s'ouvre pour demander à l'usager de renommer la feuille
Gestion2. C'est cette partie de macro que je veux changer, LA SECTION OÙ IL
Y A LE INPUTBOX, je veux que se soit un userform que j'ai cré, c'est juste
que j'ignore quoi écrire dans le code de mon userform pour faire en sorte
que dans le textobx, l'information qui sera saisi soit le nouveau nom donné
à la feuille... heu, c'est pas évident à expliquer.

Dans le userform2 j'ai mis un contrôle Zone de texte. Je ne sais pas quoi
écrire dans le code du userform2.

Dans la macro que j'ai inséré dans mon message précédent, j'ai fait une
grande flèche devant la ligne que je souhaite remplacé par le userform2
(d'ailleurs, regarde un peu plus bas de la grande flèche : c'est inscrit
'textbox : demande à l'usager de renommer la nouvelle feuille
UserForm2.Show
je ne sais pas comment adapter le remplacement de la section qui
concerne le "renommer" la feuille Gestion2.

Ouf..... et re-ouf ! est-ce plus clair que tantôt ?

Caroline




"jps" a écrit dans le message de news:
#
moi, non, caroline si ce n'est que ton usine sent le gaz d'ici ; certes,
il

y a un fort vent d'ouest mais quand même...
jps

"Caroline L." a écrit dans le message de
news:uKZdw$
Bonjour MichDenis,
Tu comprends ? Merci beaucoup.
Caroline


Sub meli_melo

'vérifier si la protection classeur est activée
If ActiveWorkbook.ProtectStructure = True Then
MsgBox "Veuillez enlever la protection du classeur"
Exit Sub
Else


'empêcher ESC
Application.EnableCancelKey = xlDisabled

On Error Resume Next
Application.DisplayAlerts = False


Sheets("Gestion").Visible = True

'ajouter les dim
Dim bongarçonoubonnefille As Boolean
Dim nomactuel As String, nouveaunom As String


Worksheets("Gestion").Copy After:=Sheets(Sheets.Count)
ActiveSheet.Name = "Gestion 2"

Sheets("Gestion 2").Move After:=Sheets(Sheets.Count)
Sheets("Gestion 2").Select

nomactuel = "Gestion 2"

Do

-----------------> nouveaunom = InputBox("Indiquez le nom de cette
nouvelle

feuille (champ au bas)", "Nommez la feuille")


'textbox : demande à l'usager de renommer la nouvelle feuille
UserForm2.Show


If nouveaunom = nomactuel Then
MsgBox "Modifiez le nom de de la feuille svp."
bongarçonoubonnefille = False
ElseIf nouveaunom = "" Then
bongarçonoubonnefille = False
MsgBox "Modifiez le nom de de la feuille svp."
Else
bongarçonoubonnefille = True
End If
Loop Until bongarçonoubonnefille
ActiveSheet.Name = nouveaunom

Application.DisplayAlerts = True
Range("B1").Select

'arrêt de cancel ESC
Application.EnableCancelKey = xlInterrupt


Sheets("Gestion").Visible = xlSheetVeryHidden


'double-clique sur date du calendrier (date pour cellule B1)
UserForm1.Show


End Sub



















"MichDenis" a écrit dans le message de news:
OVoRkO#
Bonsoir Caroline,

Dans le haut de ton formulaire, tu déclares une variable :

Dim LaDate as String

Dans la procédure suivante :
Dim LaDate As String

'----------------------------
Private Sub Calendar1_DblClick()

LaDate = Me.Calendar1.Value
[B1].NumberFormat = "DD/MM/YYYY"
[B1] = LaDate
UserForm1.Hide

End Sub
'----------------------------

Ce qui suit empêchera le formulaire de se fermer par la croix si la
variable LaDate ne contient pas une valeur qui est issue d'un

double-clique de l'usager sur une date du calendrier.

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As
Integer)




If CloseMode = 0 And IsDate(LaDate) = False Then
Cancel = True
End If

End Sub
'----------------------------

Et pour finir, il manque un truc à ta procédure, comment l'ouverture
de



ton formulaire est-il provoquée ? Dans cet événement, tu
dois ajouter à ta procédure, au moins une ligne de code : Remise à ""
la



variable LaDate et personnellement, je m'assurerais que la
cellule B1 est vide pour forcer l'usager à saisir à nouveau une
nouvelle



date.

LaDate = ""
Range("B1") = ""


Salutations!







"Caroline L." a écrit dans le message de news:


Bonsoir MichDenis,

tu as raison, j'aurais dû fournir tout le code. Mais j'ai changé ma
façon


de
faire, donc j'ai enlevé le bout de code qui me posait un problème.
Sauf



que
maintenant j'ai un autre problème ! Haaaa, le vba !!

Sub date_en_b1
UserForm1.Show
End sub


et le code du userform est :
Private Sub Calendar1_DblClick()
[B1] = Me.Calendar1
UserForm1.Hide
End Sub

Je voudrais que l'usager ne puisse pas cliquer sur le X à droite pour
fermer

la boîte (le userform). Je veux l'obliger à double-cliquer sur une
date.



Est-ce très compliqué ?

Merci beaucoup

Caroline






"MichDenis" a écrit dans le message de news:

Bonsoir Caroline,

S.V.P donne tout le code de ta macro. Cette dernière est sûrement
déclenché par un événement.. Lequel ?



Salutations!



"Caroline L." a écrit dans le message de
news:





Bonjour MichDenis,

excuse-moi de te répondre si tard (j'ai eu des problèmes dans le
réception


des posts de hier à aujourd'hui). Je me suis abonné à msnews de
microsoft...

je vais voir si c'est mieux.

Finalement, c'est correct pour le calendrier en B1, j'ai utilisé ce
que



LSteph m'a fourni. Mais j'ai un dernier petit problème. Peux-tu
seulement


me
dire pourquoi dans ce qui suit, le msgbox apparaît 2
fois (une après l'autre) ??

'vérifier si B1 est vide
If Range("B1").Value = "" Then
MsgBox "Veuillez entrer la date dans le champ 'Du__________'" &
vbCrLf




&
"Format jj-mm-aa", vbOKOnly, "Lundi le..."
Range("B1").Select
Exit Sub
End If


Merci pour ton aide.

Caroline



"MichDenis" a écrit dans le message de news:


Bonsoir Caroline,

Ce contrôle DTpicker n'existe pas dans la version Excel 2000 ...
ce





n'est
qu'à partir de la version excel 2002.

Sauf que tu peux peut être le récupérer dans des classeurs à
télécharger



sur le site de Misange. Il est facilement récupérable sur
Internet.


Salutations!




"Caroline L." a écrit dans le message de
news:




bs_4e.161250$
Re-bonjour jps,

oui je vois l'icone du marteau (boîte à outils) mais il n'y a pas
de





liste
Dans les outils, contrôles supplémentaires ? non, je ne vois rien
du




nom
de
Data and Time Picker. J'ai Excel 2000. Est-ce Data source
controle





9.0
?



"jps" a écrit dans le message de news:

bonjour caroline
si denis était dans le coin (mais il avait un apéro ce soir qui
a







duré
un
peu plus que prévu) il te dirait de t'intéresser à un petit truc
du





nom
de
Data and Time Picker (DT Picker pour les rapides) ; ah! tu vas
me






demander
où il se trouve, bien sûr : tu cliques sur l'icône avec les
outils






(tu
vois
le marteau, oui? bon mais ne cherche pas la faucille, ce n'est
pas






biloff
qui a pondu mais bilou) et dans la liste, tu vas découvrir ce
contrôle




(dans
la série des Microsoft...), tu vas le mettre dans ta feuille et
tu






vas
avoir
un joli calendrier...et si tu veux le faire parler, tu vas voir
dans





ses
propriétés
jps

"Caroline L." a écrit dans le message de
news:_PY4e.160414$
Mais de toute façon, si tu regardes ma réponse précédente
(celle








je
répond à anonymousA)
regardes mon autre réponse à celui là précisément.

je ne vois pas... ?


[b1]=format(Now,"dd-mmm-yyyy")
est-ce que cela répond à un autre post qui oblige l'usager à

saisir





en
B1
une date ? Si oui, ma question du calendrier n'a rien à voir
avec






la
question d'obliger la saisie en B1.
Bref, je ne comprends pas ce que tu veux dire.

Tu peux faire idem avec l controlcalendar ...dans userform

Private Sub Calendar1_DblClick()
[b1] = Me.Calendar1
UserForm1.Hide
End Sub
J'ai insérer un calendrier dans le userform1. Ensuite il faut

insérer




la
procédure où ? Et qu'est-ce que cela fait au juste ?
Excuse-moi







mais
je
suis un peu perdu (peut-être pcq je ne connait pas le
Calendar1_DblClick.



merci de m'aider
Caroline







"LSteph" a écrit dans le message de
news:








As-tu une idée
...oui mais pas dans inputbox , dans un userform

Mais de toute façon, si tu regardes ma réponse précédente
(celle








je
répond à anonymousA)
regardes mon autre réponse à celui là précisément.

...
alors sans calendrier:

[b1]=format(Now,"dd-mmm-yyyy")

Tu peux faire idem avec l controlcalendar ...dans userform

Private Sub Calendar1_DblClick()
[b1] = Me.Calendar1
UserForm1.Hide
End Sub


"Caroline L." a écrit dans le
message








de
news:
ueY4e.160067$
Re-bonjour LSteph,

oui merci, j'ai regardé le lien. Le problème c'est que je
ne









peux
pas
ouvrir
des fichiers zip.
Mais de toute façon, si tu regardes ma réponse précédente
(celle








je
répond à anonymousA), je disais que je ne veux pas gérer
des









dates,
je
veux
seulement le calendrier qui s'affiche lorsque l'usager
entre









lui-même
la
date.

As-tu une idée comment faire appaître le calendrier dans
la









boîte
dialogue
du inputbox ?
Sinon, est-il possible d'ouvrir 2 boîtes dialogues (le
calendrier






en
haut
à
droite et le inputbox au centre un peu plus bas et tout se
ferme







lorsque
l'usager saisi sa date dans l'endroit prévu ?)

'renommer la feuille en entrant la date appropriée
nouveaunom = InputBox("Indiquez le nouveau nom de la
feuille",








"Renommer
la
feuille")


Caroline


"LSteph" a écrit dans le message de
news:








ReReBonsoir Caroline,
outre le controlcalendar disponible pour excel dans
certaines versions d'office car en réalité il appartient
à










Access.

Va sur le site Frédéric Sigonneau à calendriers tu
trouvera










plein
de
choses
:
http://frederic.sigonneau.free.fr/Calendriers.htm

'lSteph

"Caroline L." a écrit dans le
message









de
news:
QkX4e.158932$
Re re-bonjour,

j'ai la tête pleine de questions. Comment insérer un
calendrier








dans
le
InputBox suivant
(voir au milieu de Calendrier.Show) :

nouveaunom = InputBox("Indiquez le nouveau nom de la
feuille",








Calendrier.Show, "Renommer la feuille")

Tous mes remerciements,

Caroline













































Avatar
MichDenis
Bonjour Caroline,

Il faut que ta question soit précise ... Désolé mais je ne peux pas prendre connaissance de tout ton code c'est une question de
temps.
à propos de ton code :
Les variables d'une procédure se déclarent au début d'une procédure
L'indentation du code rend la lecture du code beaucoup plus facile
Il faut soigner un peu la présentation ....


IL y a une multitude de manières de rebaptiser une feuille.

Supposons que tu veuilles le faire à partir d'un textbox dans un formulaire :

A ) Dans les propriétés du textbox, limite le nombre de caractères à 31, c'est le nombre limite permis pour ce qui est du nombre de
caractères dans le nom d'une feuille Propriété MaxLength = 31

B ) Un certain nombre de caractère ne peut pas faire parti d'un nom d'une feuille pour éviter que l'usager puisse les saisir, tu
peux utiliser ceci :
'------------------------------------
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)

'Cette procédure empêche l'usager de saisir des caractères
'non permis dans le Textbox

Dim Arr, A As Integer
Arr = Array(58, 42, 62, 60, 63, 91, 93, 124)
'Ces caractères sont interdits dans le nom d'une feuille.
'[ 91
'] 93
'| 124
': 58
'> 62
'< 60
'* 42
'? 63
On Error Resume Next
A = WorksheetFunction.Match(KeyAscii, Arr, 0)
If A <> 0 Then
KeyAscii = 0
Else
Err = 0
End If

End Sub
'------------------------------------


C ) Enfin, la procédure qui va vérifier que la saisie du textbox n'est pas déjà le nom d'une feuille déjà existante dans le
classeur.

'-------------------------------------
Private Sub CmDChangerLenom_Click()
Dim Ok As Boolean

Ok = False
With ThisWorkbook
For Each sh In .Sheets
If UCase(sh.Name) = UCase(Me.TextBox1) Then
Ok = True
Exit For
End If
Next

If Ok = True Then
MsgBox "Ce nom de feuille existe déjà. modifiez-le."
Me.TextBox1.SetFocus
Me.TextBox1.SelStart = 0
Me.TextBox1.SelLength = Len(Me.TextBox1)
Else
.Worksheets("Gestion 2").Name = Me.TextBox1
End If
End With

End Sub
'-------------------------------------


Salutations!








"Caroline L." a écrit dans le message de news: uKZdw$
Bonjour MichDenis,

Parfait, tout marche à merveille. Merci beaucoup à toi. C'est intéressant,
je commence à découvrir les userform (un autre univers à apprendre).
En passant, j'ai créé un autre userform (userform2) et il me manque le bout
de code pour le
Private Sub TextBox1_Change(). Peux-tu m'aider svp avec cette partie ?

La donnée saisie dans le TextBox1 est en fait le futur nom de la feuille
(qui vient tout juste d'être créée à partir d'une macro-->voir plus bas).
La macro se poursuit en demandant à l'usager de renommer la feuille (donc la
feuille Gestion2 doit être renommée).

Présentement, c'est avec un inputbox que la feuille est renommée mais je
voudrais que ce soit un userform à la place mais je n'arrive pas à "lié" la
saisie fait dans le textbox avec le "renommer feuille". Exemple : si je
saisi "Production" dans le textbox1, la nouvelle feuille portera le nouveau
nom de "Production".
Dans la macro du bas, lorsque le système demandait à l'usager de renommer la
feuille Gestion2 pour un nouveau nom, il ne pouvait pas laissé tomber, il
devait absolument renommer celle-ci différement de Gestion2. Et bien, je
désire faire la même chose avec le userform.
Tu comprends ? Merci beaucoup.
Caroline


Sub meli_melo

'vérifier si la protection classeur est activée
If ActiveWorkbook.ProtectStructure = True Then
MsgBox "Veuillez enlever la protection du classeur"
Exit Sub
Else


'empêcher ESC
Application.EnableCancelKey = xlDisabled

On Error Resume Next
Application.DisplayAlerts = False


Sheets("Gestion").Visible = True

'ajouter les dim
Dim bongarçonoubonnefille As Boolean
Dim nomactuel As String, nouveaunom As String


Worksheets("Gestion").Copy After:=Sheets(Sheets.Count)
ActiveSheet.Name = "Gestion 2"

Sheets("Gestion 2").Move After:=Sheets(Sheets.Count)
Sheets("Gestion 2").Select

nomactuel = "Gestion 2"

Do

-----------------> nouveaunom = InputBox("Indiquez le nom de cette nouvelle
feuille (champ au bas)", "Nommez la feuille")


'textbox : demande à l'usager de renommer la nouvelle feuille
UserForm2.Show


If nouveaunom = nomactuel Then
MsgBox "Modifiez le nom de de la feuille svp."
bongarçonoubonnefille = False
ElseIf nouveaunom = "" Then
bongarçonoubonnefille = False
MsgBox "Modifiez le nom de de la feuille svp."
Else
bongarçonoubonnefille = True
End If
Loop Until bongarçonoubonnefille
ActiveSheet.Name = nouveaunom

Application.DisplayAlerts = True
Range("B1").Select

'arrêt de cancel ESC
Application.EnableCancelKey = xlInterrupt


Sheets("Gestion").Visible = xlSheetVeryHidden


'double-clique sur date du calendrier (date pour cellule B1)
UserForm1.Show


End Sub



















"MichDenis" a écrit dans le message de news:
OVoRkO#
Bonsoir Caroline,

Dans le haut de ton formulaire, tu déclares une variable :

Dim LaDate as String

Dans la procédure suivante :
Dim LaDate As String

'----------------------------
Private Sub Calendar1_DblClick()

LaDate = Me.Calendar1.Value
[B1].NumberFormat = "DD/MM/YYYY"
[B1] = LaDate
UserForm1.Hide

End Sub
'----------------------------

Ce qui suit empêchera le formulaire de se fermer par la croix si la
variable LaDate ne contient pas une valeur qui est issue d'un

double-clique de l'usager sur une date du calendrier.

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)

If CloseMode = 0 And IsDate(LaDate) = False Then
Cancel = True
End If

End Sub
'----------------------------

Et pour finir, il manque un truc à ta procédure, comment l'ouverture de
ton formulaire est-il provoquée ? Dans cet événement, tu

dois ajouter à ta procédure, au moins une ligne de code : Remise à "" la
variable LaDate et personnellement, je m'assurerais que la

cellule B1 est vide pour forcer l'usager à saisir à nouveau une nouvelle
date.


LaDate = ""
Range("B1") = ""


Salutations!







"Caroline L." a écrit dans le message de news:


Bonsoir MichDenis,

tu as raison, j'aurais dû fournir tout le code. Mais j'ai changé ma façon
de

faire, donc j'ai enlevé le bout de code qui me posait un problème. Sauf
que

maintenant j'ai un autre problème ! Haaaa, le vba !!

Sub date_en_b1
UserForm1.Show
End sub


et le code du userform est :
Private Sub Calendar1_DblClick()
[B1] = Me.Calendar1
UserForm1.Hide
End Sub

Je voudrais que l'usager ne puisse pas cliquer sur le X à droite pour
fermer

la boîte (le userform). Je veux l'obliger à double-cliquer sur une date.
Est-ce très compliqué ?

Merci beaucoup

Caroline






"MichDenis" a écrit dans le message de news:

Bonsoir Caroline,

S.V.P donne tout le code de ta macro. Cette dernière est sûrement
déclenché par un événement.. Lequel ?



Salutations!



"Caroline L." a écrit dans le message de news:


Bonjour MichDenis,

excuse-moi de te répondre si tard (j'ai eu des problèmes dans le
réception


des posts de hier à aujourd'hui). Je me suis abonné à msnews de
microsoft...

je vais voir si c'est mieux.

Finalement, c'est correct pour le calendrier en B1, j'ai utilisé ce que
LSteph m'a fourni. Mais j'ai un dernier petit problème. Peux-tu
seulement


me
dire pourquoi dans ce qui suit, le msgbox apparaît 2
fois (une après l'autre) ??

'vérifier si B1 est vide
If Range("B1").Value = "" Then
MsgBox "Veuillez entrer la date dans le champ 'Du__________'" & vbCrLf &
"Format jj-mm-aa", vbOKOnly, "Lundi le..."
Range("B1").Select
Exit Sub
End If


Merci pour ton aide.

Caroline



"MichDenis" a écrit dans le message de news:


Bonsoir Caroline,

Ce contrôle DTpicker n'existe pas dans la version Excel 2000 ... ce
n'est


qu'à partir de la version excel 2002.

Sauf que tu peux peut être le récupérer dans des classeurs à
télécharger



sur le site de Misange. Il est facilement récupérable sur
Internet.


Salutations!




"Caroline L." a écrit dans le message de news:
bs_4e.161250$

Re-bonjour jps,

oui je vois l'icone du marteau (boîte à outils) mais il n'y a pas de
liste


Dans les outils, contrôles supplémentaires ? non, je ne vois rien du
nom


de
Data and Time Picker. J'ai Excel 2000. Est-ce Data source controle
9.0



?



"jps" a écrit dans le message de news:

bonjour caroline
si denis était dans le coin (mais il avait un apéro ce soir qui a dû
duré


un
peu plus que prévu) il te dirait de t'intéresser à un petit truc du
nom



de
Data and Time Picker (DT Picker pour les rapides) ; ah! tu vas me
demander


où il se trouve, bien sûr : tu cliques sur l'icône avec les outils
(tu




vois
le marteau, oui? bon mais ne cherche pas la faucille, ce n'est pas
biloff


qui a pondu mais bilou) et dans la liste, tu vas découvrir ce
contrôle




(dans
la série des Microsoft...), tu vas le mettre dans ta feuille et tu
vas




avoir
un joli calendrier...et si tu veux le faire parler, tu vas voir dans
ses



propriétés
jps

"Caroline L." a écrit dans le message de
news:_PY4e.160414$
Mais de toute façon, si tu regardes ma réponse précédente
(celle








je
répond à anonymousA)
regardes mon autre réponse à celui là précisément.

je ne vois pas... ?


[b1]=format(Now,"dd-mmm-yyyy")
est-ce que cela répond à un autre post qui oblige l'usager à

saisir





en
B1
une date ? Si oui, ma question du calendrier n'a rien à voir avec
la




question d'obliger la saisie en B1.
Bref, je ne comprends pas ce que tu veux dire.

Tu peux faire idem avec l controlcalendar ...dans userform

Private Sub Calendar1_DblClick()
[b1] = Me.Calendar1
UserForm1.Hide
End Sub
J'ai insérer un calendrier dans le userform1. Ensuite il faut

insérer




la
procédure où ? Et qu'est-ce que cela fait au juste ? Excuse-moi
mais




je
suis un peu perdu (peut-être pcq je ne connait pas le
Calendar1_DblClick.



merci de m'aider
Caroline







"LSteph" a écrit dans le message de news:

As-tu une idée
...oui mais pas dans inputbox , dans un userform

Mais de toute façon, si tu regardes ma réponse précédente
(celle








je
répond à anonymousA)
regardes mon autre réponse à celui là précisément.

...
alors sans calendrier:

[b1]=format(Now,"dd-mmm-yyyy")

Tu peux faire idem avec l controlcalendar ...dans userform

Private Sub Calendar1_DblClick()
[b1] = Me.Calendar1
UserForm1.Hide
End Sub


"Caroline L." a écrit dans le message de
news:




ueY4e.160067$
Re-bonjour LSteph,

oui merci, j'ai regardé le lien. Le problème c'est que je ne
peux






pas
ouvrir
des fichiers zip.
Mais de toute façon, si tu regardes ma réponse précédente
(celle








je
répond à anonymousA), je disais que je ne veux pas gérer des
dates,





je
veux
seulement le calendrier qui s'affiche lorsque l'usager entre
lui-même




la
date.

As-tu une idée comment faire appaître le calendrier dans la
boîte






dialogue
du inputbox ?
Sinon, est-il possible d'ouvrir 2 boîtes dialogues (le
calendrier






en
haut
à
droite et le inputbox au centre un peu plus bas et tout se
ferme







lorsque
l'usager saisi sa date dans l'endroit prévu ?)

'renommer la feuille en entrant la date appropriée
nouveaunom = InputBox("Indiquez le nouveau nom de la feuille",
"Renommer



la
feuille")


Caroline


"LSteph" a écrit dans le message de
news:








ReReBonsoir Caroline,
outre le controlcalendar disponible pour excel dans
certaines versions d'office car en réalité il appartient à
Access.







Va sur le site Frédéric Sigonneau à calendriers tu trouvera
plein







de
choses
:
http://frederic.sigonneau.free.fr/Calendriers.htm

'lSteph

"Caroline L." a écrit dans le message
de







news:
QkX4e.158932$
Re re-bonjour,

j'ai la tête pleine de questions. Comment insérer un
calendrier








dans
le
InputBox suivant
(voir au milieu de Calendrier.Show) :

nouveaunom = InputBox("Indiquez le nouveau nom de la
feuille",








Calendrier.Show, "Renommer la feuille")

Tous mes remerciements,

Caroline






































Avatar
Caroline L.
Re-bonjour MichDenis,

Oui tu as raison, sûrement que la présentation de mes macros laisse à
désirer, l'apprentissage se poursuit.

J'essaie de formuler mes questions avec le plus de précision mais ce n'est
pas toujours facile.
Je sais également que votre temps est précieux et votre aide est très
appréciée.

Donc, pour mon histoire de renommer la feuille, je vais faire un bout de
chemin avec ce que tu m'as expliqué et fourni.

Merci à toi et bonne soirée !

Caroline



"MichDenis" a écrit dans le message de news:
#
Bonjour Caroline,

Il faut que ta question soit précise ... Désolé mais je ne peux pas
prendre connaissance de tout ton code c'est une question de

temps.
à propos de ton code :
Les variables d'une procédure se déclarent au début d'une procédure
L'indentation du code rend la lecture du code beaucoup plus facile
Il faut soigner un peu la présentation ....


IL y a une multitude de manières de rebaptiser une feuille.

Supposons que tu veuilles le faire à partir d'un textbox dans un
formulaire :


A ) Dans les propriétés du textbox, limite le nombre de caractères à 31,
c'est le nombre limite permis pour ce qui est du nombre de

caractères dans le nom d'une feuille Propriété MaxLength = 31

B ) Un certain nombre de caractère ne peut pas faire parti d'un nom d'une
feuille pour éviter que l'usager puisse les saisir, tu

peux utiliser ceci :
'------------------------------------
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)

'Cette procédure empêche l'usager de saisir des caractères
'non permis dans le Textbox

Dim Arr, A As Integer
Arr = Array(58, 42, 62, 60, 63, 91, 93, 124)
'Ces caractères sont interdits dans le nom d'une feuille.
'[ 91
'] 93
'| 124
': 58
'> 62
'< 60
'* 42
'? 63
On Error Resume Next
A = WorksheetFunction.Match(KeyAscii, Arr, 0)
If A <> 0 Then
KeyAscii = 0
Else
Err = 0
End If

End Sub
'------------------------------------


C ) Enfin, la procédure qui va vérifier que la saisie du textbox n'est pas
déjà le nom d'une feuille déjà existante dans le

classeur.

'-------------------------------------
Private Sub CmDChangerLenom_Click()
Dim Ok As Boolean

Ok = False
With ThisWorkbook
For Each sh In .Sheets
If UCase(sh.Name) = UCase(Me.TextBox1) Then
Ok = True
Exit For
End If
Next

If Ok = True Then
MsgBox "Ce nom de feuille existe déjà. modifiez-le."
Me.TextBox1.SetFocus
Me.TextBox1.SelStart = 0
Me.TextBox1.SelLength = Len(Me.TextBox1)
Else
.Worksheets("Gestion 2").Name = Me.TextBox1
End If
End With

End Sub
'-------------------------------------


Salutations!








"Caroline L." a écrit dans le message de news:
uKZdw$

Bonjour MichDenis,

Parfait, tout marche à merveille. Merci beaucoup à toi. C'est intéressant,
je commence à découvrir les userform (un autre univers à apprendre).
En passant, j'ai créé un autre userform (userform2) et il me manque le
bout

de code pour le
Private Sub TextBox1_Change(). Peux-tu m'aider svp avec cette partie ?

La donnée saisie dans le TextBox1 est en fait le futur nom de la feuille
(qui vient tout juste d'être créée à partir d'une macro-->voir plus bas).
La macro se poursuit en demandant à l'usager de renommer la feuille (donc
la

feuille Gestion2 doit être renommée).

Présentement, c'est avec un inputbox que la feuille est renommée mais je
voudrais que ce soit un userform à la place mais je n'arrive pas à "lié"
la

saisie fait dans le textbox avec le "renommer feuille". Exemple : si je
saisi "Production" dans le textbox1, la nouvelle feuille portera le
nouveau

nom de "Production".
Dans la macro du bas, lorsque le système demandait à l'usager de renommer
la

feuille Gestion2 pour un nouveau nom, il ne pouvait pas laissé tomber, il
devait absolument renommer celle-ci différement de Gestion2. Et bien, je
désire faire la même chose avec le userform.
Tu comprends ? Merci beaucoup.
Caroline


Sub meli_melo

'vérifier si la protection classeur est activée
If ActiveWorkbook.ProtectStructure = True Then
MsgBox "Veuillez enlever la protection du classeur"
Exit Sub
Else


'empêcher ESC
Application.EnableCancelKey = xlDisabled

On Error Resume Next
Application.DisplayAlerts = False


Sheets("Gestion").Visible = True

'ajouter les dim
Dim bongarçonoubonnefille As Boolean
Dim nomactuel As String, nouveaunom As String


Worksheets("Gestion").Copy After:=Sheets(Sheets.Count)
ActiveSheet.Name = "Gestion 2"

Sheets("Gestion 2").Move After:=Sheets(Sheets.Count)
Sheets("Gestion 2").Select

nomactuel = "Gestion 2"

Do

-----------------> nouveaunom = InputBox("Indiquez le nom de cette
nouvelle

feuille (champ au bas)", "Nommez la feuille")


'textbox : demande à l'usager de renommer la nouvelle feuille
UserForm2.Show


If nouveaunom = nomactuel Then
MsgBox "Modifiez le nom de de la feuille svp."
bongarçonoubonnefille = False
ElseIf nouveaunom = "" Then
bongarçonoubonnefille = False
MsgBox "Modifiez le nom de de la feuille svp."
Else
bongarçonoubonnefille = True
End If
Loop Until bongarçonoubonnefille
ActiveSheet.Name = nouveaunom

Application.DisplayAlerts = True
Range("B1").Select

'arrêt de cancel ESC
Application.EnableCancelKey = xlInterrupt


Sheets("Gestion").Visible = xlSheetVeryHidden


'double-clique sur date du calendrier (date pour cellule B1)
UserForm1.Show


End Sub



















"MichDenis" a écrit dans le message de news:
OVoRkO#
Bonsoir Caroline,

Dans le haut de ton formulaire, tu déclares une variable :

Dim LaDate as String

Dans la procédure suivante :
Dim LaDate As String

'----------------------------
Private Sub Calendar1_DblClick()

LaDate = Me.Calendar1.Value
[B1].NumberFormat = "DD/MM/YYYY"
[B1] = LaDate
UserForm1.Hide

End Sub
'----------------------------

Ce qui suit empêchera le formulaire de se fermer par la croix si la
variable LaDate ne contient pas une valeur qui est issue d'un

double-clique de l'usager sur une date du calendrier.

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)

If CloseMode = 0 And IsDate(LaDate) = False Then
Cancel = True
End If

End Sub
'----------------------------

Et pour finir, il manque un truc à ta procédure, comment l'ouverture de
ton formulaire est-il provoquée ? Dans cet événement, tu

dois ajouter à ta procédure, au moins une ligne de code : Remise à "" la
variable LaDate et personnellement, je m'assurerais que la

cellule B1 est vide pour forcer l'usager à saisir à nouveau une nouvelle
date.


LaDate = ""
Range("B1") = ""


Salutations!







"Caroline L." a écrit dans le message de news:


Bonsoir MichDenis,

tu as raison, j'aurais dû fournir tout le code. Mais j'ai changé ma
façon


de
faire, donc j'ai enlevé le bout de code qui me posait un problème. Sauf
que

maintenant j'ai un autre problème ! Haaaa, le vba !!

Sub date_en_b1
UserForm1.Show
End sub


et le code du userform est :
Private Sub Calendar1_DblClick()
[B1] = Me.Calendar1
UserForm1.Hide
End Sub

Je voudrais que l'usager ne puisse pas cliquer sur le X à droite pour
fermer

la boîte (le userform). Je veux l'obliger à double-cliquer sur une date.
Est-ce très compliqué ?

Merci beaucoup

Caroline






"MichDenis" a écrit dans le message de news:

Bonsoir Caroline,

S.V.P donne tout le code de ta macro. Cette dernière est sûrement
déclenché par un événement.. Lequel ?



Salutations!



"Caroline L." a écrit dans le message de news:


Bonjour MichDenis,

excuse-moi de te répondre si tard (j'ai eu des problèmes dans le
réception


des posts de hier à aujourd'hui). Je me suis abonné à msnews de
microsoft...

je vais voir si c'est mieux.

Finalement, c'est correct pour le calendrier en B1, j'ai utilisé ce
que



LSteph m'a fourni. Mais j'ai un dernier petit problème. Peux-tu
seulement


me
dire pourquoi dans ce qui suit, le msgbox apparaît 2
fois (une après l'autre) ??

'vérifier si B1 est vide
If Range("B1").Value = "" Then
MsgBox "Veuillez entrer la date dans le champ 'Du__________'" & vbCrLf
&



"Format jj-mm-aa", vbOKOnly, "Lundi le..."
Range("B1").Select
Exit Sub
End If


Merci pour ton aide.

Caroline



"MichDenis" a écrit dans le message de news:


Bonsoir Caroline,

Ce contrôle DTpicker n'existe pas dans la version Excel 2000 ... ce
n'est


qu'à partir de la version excel 2002.

Sauf que tu peux peut être le récupérer dans des classeurs à
télécharger



sur le site de Misange. Il est facilement récupérable sur
Internet.


Salutations!




"Caroline L." a écrit dans le message de
news:




bs_4e.161250$
Re-bonjour jps,

oui je vois l'icone du marteau (boîte à outils) mais il n'y a pas de
liste


Dans les outils, contrôles supplémentaires ? non, je ne vois rien
du




nom
de
Data and Time Picker. J'ai Excel 2000. Est-ce Data source controle
9.0



?



"jps" a écrit dans le message de news:

bonjour caroline
si denis était dans le coin (mais il avait un apéro ce soir qui a






duré
un
peu plus que prévu) il te dirait de t'intéresser à un petit truc
du





nom
de
Data and Time Picker (DT Picker pour les rapides) ; ah! tu vas me
demander


où il se trouve, bien sûr : tu cliques sur l'icône avec les outils
(tu




vois
le marteau, oui? bon mais ne cherche pas la faucille, ce n'est pas
biloff


qui a pondu mais bilou) et dans la liste, tu vas découvrir ce
contrôle




(dans
la série des Microsoft...), tu vas le mettre dans ta feuille et tu
vas




avoir
un joli calendrier...et si tu veux le faire parler, tu vas voir
dans





ses
propriétés
jps

"Caroline L." a écrit dans le message de
news:_PY4e.160414$
Mais de toute façon, si tu regardes ma réponse précédente
(celle








je
répond à anonymousA)
regardes mon autre réponse à celui là précisément.

je ne vois pas... ?


[b1]=format(Now,"dd-mmm-yyyy")
est-ce que cela répond à un autre post qui oblige l'usager à

saisir





en
B1
une date ? Si oui, ma question du calendrier n'a rien à voir
avec






la
question d'obliger la saisie en B1.
Bref, je ne comprends pas ce que tu veux dire.

Tu peux faire idem avec l controlcalendar ...dans userform

Private Sub Calendar1_DblClick()
[b1] = Me.Calendar1
UserForm1.Hide
End Sub
J'ai insérer un calendrier dans le userform1. Ensuite il faut

insérer




la
procédure où ? Et qu'est-ce que cela fait au juste ? Excuse-moi
mais




je
suis un peu perdu (peut-être pcq je ne connait pas le
Calendar1_DblClick.



merci de m'aider
Caroline







"LSteph" a écrit dans le message de news:

As-tu une idée
...oui mais pas dans inputbox , dans un userform

Mais de toute façon, si tu regardes ma réponse précédente
(celle








je
répond à anonymousA)
regardes mon autre réponse à celui là précisément.

...
alors sans calendrier:

[b1]=format(Now,"dd-mmm-yyyy")

Tu peux faire idem avec l controlcalendar ...dans userform

Private Sub Calendar1_DblClick()
[b1] = Me.Calendar1
UserForm1.Hide
End Sub


"Caroline L." a écrit dans le message
de







news:
ueY4e.160067$
Re-bonjour LSteph,

oui merci, j'ai regardé le lien. Le problème c'est que je ne
peux






pas
ouvrir
des fichiers zip.
Mais de toute façon, si tu regardes ma réponse précédente
(celle








je
répond à anonymousA), je disais que je ne veux pas gérer des
dates,





je
veux
seulement le calendrier qui s'affiche lorsque l'usager entre
lui-même




la
date.

As-tu une idée comment faire appaître le calendrier dans la
boîte






dialogue
du inputbox ?
Sinon, est-il possible d'ouvrir 2 boîtes dialogues (le
calendrier






en
haut
à
droite et le inputbox au centre un peu plus bas et tout se
ferme







lorsque
l'usager saisi sa date dans l'endroit prévu ?)

'renommer la feuille en entrant la date appropriée
nouveaunom = InputBox("Indiquez le nouveau nom de la
feuille",








"Renommer
la
feuille")


Caroline


"LSteph" a écrit dans le message de
news:








ReReBonsoir Caroline,
outre le controlcalendar disponible pour excel dans
certaines versions d'office car en réalité il appartient à
Access.







Va sur le site Frédéric Sigonneau à calendriers tu trouvera
plein







de
choses
:
http://frederic.sigonneau.free.fr/Calendriers.htm

'lSteph

"Caroline L." a écrit dans le
message









de
news:
QkX4e.158932$
Re re-bonjour,

j'ai la tête pleine de questions. Comment insérer un
calendrier








dans
le
InputBox suivant
(voir au milieu de Calendrier.Show) :

nouveaunom = InputBox("Indiquez le nouveau nom de la
feuille",








Calendrier.Show, "Renommer la feuille")

Tous mes remerciements,

Caroline











































1 2 3