XL 2010 VBA Choix d'une date par l'utilisateur via calendrier

Marcelo Brazzer

XLDnaute Nouveau
Bonjour,

Je suis débutant en VBA et dans le cadre d'un projet je cherche un moyen de proposer à l'utilisateur du fichier, une date et une heure. Pour faciliter son utilisation, est-il possible de le proposer via un calendrier directement dans un MsxBox ou quelque chose comme ça ?

Il faudrait ensuite que son choix soit retranscrit dans une cellule quelconque.

Ex : lancement de la macro
Le calendrier apparait
Je choisis la date : le 13/07/2016
Je choisis l'heure : 11:00:00
S'affiche alors en cellule A1 : 13/07/2016 11:00:00

Je ne sais pas du tout si cela est faisable, j'aimerais vos lumières sur ce sujet.

je vous remercie !
 

Marcelo Brazzer

XLDnaute Nouveau
J'aimerais l'afficher après une MsgBox du type :
"Il y a t-il une date de fermeture ?"
Oui ou Non
Si oui alors on ouvre le calendrier.

Quand je disais que je ne voyais pas comment l'intégrer à mon code c'était surtout parce que je n'arrivais pas à visualiser le code. J'ouvre le classeur, double clique sur une cellule le calendrier apparait mais quand je vais dans l'onglet affichage>>macros il n'y a rien... En fait je ne comprends pas comment le calendrier apparait, quel est le code derrière tout ça ?

J'en suis qu'aux prémices du VBA, je découvre et je galère un peu..
 

Marcelo Brazzer

XLDnaute Nouveau
Bonjour Roland !

Je n'arrive toujours pas à l'intégrer à mon projet.

Je m'explique :

Mon code se trouve dans un module. Il s'agit d'un code qui supprime des colonnes, crée des nouvelles feuilles, additionne des cellules... Quelques trucs simples de ce genre.

J'aimerais intégrer l'ouverture du calendrier à la fin de l'exécution de la macro avec un MsgBox du type : "il y a t-il un jour de fermeture ?" Si l'utilisateur click sur "Oui" alors le calendrier s'ouvre.

Il saisie la date et l'heure et sa saisie vient s'afficher dans la cellule K5 de la deuxième feuille par exemple.

Est-il possible de l'intégrer de la sorte à mon projet ?

Merci
 

Roland_M

XLDnaute Barbatruc
Bonjour,

bien entendu ! mais sans classeur je ne peux rien faire pour toi !?

tu voulais un calendrier pour date et heure sur cellule active, c'est le code que je t'ai fais.
maintenant tu veux une date et heure pour une cellule précise, c'est déjà plus pareil
dans ce cas le modèle que je t'ai fais n'est pas programmé pour ça !

il faut être plus précis si tu veux des réponses !

ici je suis très occupé, je n'aurai pas le temps tout de suite, je verrai dans l'après midi !?

QUESTIONS!
c'est dans une macro une msgbox avec la question pour appel de ce calendrier ?
si ok la date&heure seront collées dans la cellule K5 ?
mais quel est le nom de cette feuille ?

en attendant tu réponds à ces questions précisément
et tu mets ta macro avec la ligne ou je dois incorporer la msgbox !?

ensuite on verra de ton côté pour reprendre le modèle calendrier que je te remettrai en ligne
avec ta macro modifiée en conséquence !

à tout à l'heure !
 

Marcelo Brazzer

XLDnaute Nouveau
Voici la macro dans laquelle j'aimerais afficher le calendrier.
Lorsque qu'on l'exécute, des nouvelles feuilles se créent et on vient demander à l'utilisateur s'il y a un jour de fermeture. Si oui alors le calendrier apparait et l'utilisateur renseigne la date et l'heure.
Cette saisie se colle dans la cellule K5 de la feuille F1.

Sub NouvellesFeuilles()

' Ajoute des feuilles et modifie leur nom

Sheets.Add After:=Sheets(Sheets.Count)
Sheets("Feuil1").Select
Sheets("Feuil1").Name = "F1"
Sheets.Add After:=Sheets(Sheets.Count)
Sheets("Feuil2").Select
Sheets("Feuil2").Name = "F2"
Sheets.Add After:=Sheets(Sheets.Count)
Sheets("Feuil3").Select
Sheets("Feuil3").Name = "F3"
Sheets.Add After:=Sheets(Sheets.Count)
Sheets("Feuil4").Select
Sheets("Feuil4").Name = "F4"
Sheets.Add After:=Sheets(Sheets.Count)
Sheets("Feuil5").Select
Sheets("Feuil5").Name = "F5"
Sheets.Add After:=Sheets(Sheets.Count)
Sheets("Feuil6").Select
Sheets("Feuil6").Name = "F6"
Sheets.Add After:=Sheets(Sheets.Count)
Sheets("Feuil7").Select
Sheets("Feuil7").Name = "F7"
Sheets.Add After:=Sheets(Sheets.Count)
Sheets("Feuil8").Select
Sheets("Feuil8").Name = "Bilan"

If MsgBox("Il y a t-il un jour de fermeture ?", vbYesNo, "Demande de confirmation") = vbYes Then
'Ouverture du calendrier
'Date et heure saisie par l'utilisateur collées en K5 sur F1
End If

End Sub



Merci
 

Roland_M

XLDnaute Barbatruc
Bonjour,

voir ci-joint dans ce classeur il y a le Calendrier et ta macro !
tu glisseras le calendrier dans ton classeur
et tu recopieras ta macro (que j'ai simplifié, tu verras!?)

EDIT: 22h56 j'ai rectifié une erreur ! reprendre le classeur !
 

Pièces jointes

  • CalendrierEtMacro_Marcelo.xlsm
    69.7 KB · Affichages: 636
Dernière édition:

Discussions similaires

  • Résolu(e)
Microsoft 365 Macro VBA
Réponses
16
Affichages
3 K

Statistiques des forums

Discussions
311 720
Messages
2 081 909
Membres
101 836
dernier inscrit
karmon