Tu dois ajouter un calendrier dans Excel avec une fenĂȘtre contextuelle qui apparaĂźt au moment oĂč vous cliquez sur une certaine cellule ? Vous souhaitez donner un plus bel effet Ă votre feuille excel et empĂȘcher l'utilisateur de saisir la date en la tapant ? Et bien lisez la suite, dans cet article je vais vous expliquer comment ajouter un calendrier dans excel en quelques Ă©tapes simples.
Tout ce que vous avez Ă faire pour avoir un calendrier Excel est de vous armer de patience et de suivre ce que je vais vous montrer dans les prochaines lignes.
Si vous n'avez pas de contrĂŽle de calendrier, vous devez tĂ©lĂ©charger le fichier MSCAL.OCX (sur cette page) et aprĂšs l'avoir collĂ© dans le dossier c: windowssystem32 enregistrez-le avec regsvr32 mscal.ocx en le tapant dans la fenĂȘtre ExĂ©cuter (GAGNANT + R). Une fois terminĂ©, vous pouvez le tĂ©lĂ©charger sur Outils> RĂ©fĂ©rences> Parcourir.
Comment créer un calendrier avec Excel
pour ajouter un calendrier dans excel vous devez d'abord activer dans Références Exceller, dans l'environnement VBA, ContrÎle de calendrier Microsoft 8.0 (si vous avez la version 2010 d'Excel). Pour le faire il suffit de monter Développement et cliquez sur l'icÎne Visual Basic (en haut à gauche) pour ouvrir l'environnement Application Microsoft Visual Basic.
Si vous ne vous trouvez pas dans le menu du haut, l'élément Développement, pour l'activer il faut monter Fichier> Options> Personnaliser le ruban. Dans le bon groupe choisissez l'article Cartes principales, cochez l'élément Développement et appuyez sur le bouton OK.
Dans l'environnement VBA cliquez, Ă gauche, sur la feuille sur laquelle vous travaillez et copiez et collez les lignes de code suivantes :
Private Sub Calendar1_Click() ActiveCell.Value = CDbl(Calendar1.Value) ' ActiveCell.NumberFormat = "mm/dd/yyyy" ActiveCell.Select Calendar1.Visible = False End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range) Si Target.Cells.Count > 1 Then Exit Sub If Not Application.Intersect(Range("I4:I8"), Target) Is Nothing Then Calendar1.Left = Target.Left + Target. Largeur - Calendar1.Width Calendar1.Top = Target.Top + Target.Height Calendar1.Visible = True ' sélectionnez la date d'aujourd'hui dans le calendrier 'Calendar1.Value = Date If Not IsDate(Target.Value) Then Calendar1.Value = Date Else Calendar1 .Value = Target.Value End If ElseIf Calendar1.Visible Then Calendar1.Visible = False End If End Sub
Pour afficher l'objet calendrier, accĂ©dez Ă DĂ©veloppement> Insertion> Autres contrĂŽles (IcĂŽne avec marteau et clĂ©) et ici, dans la fenĂȘtre qui apparaĂźt, choisissez Calendar Control 8.0, en plaçant le curseur entre les cellules I4: I8.
Enregistrez tout et essayez de cliquer sur une cellule entre I4 et I8. Vous pouvez bien sûr modifier la plage en l'éditant dans cette ligne de code Si ce n'est pas Application.Intersect(Range ("I4:I8"), Target) n'est rien alors
En dĂ©finissant Calendrier1.visible = Faux dans la fonction Sous-calendrier privĂ©1_Click(), vous pouvez vous assurer que lorsque vous cliquez sur la fenĂȘtre contextuelle du calendrier, celle-ci disparaĂźtra.
Comment comparer deux tableaux dans Excel