Comment faire apparaître un calendrier en cliquant sur une cellule spécifique dans Excel ?
Supposons qu'il y ait une plage de colonnes dans une feuille de calcul où vous devez fréquemment entrer et modifier des dates, mais il est fastidieux de saisir ou de changer manuellement la date à chaque fois. Comment entrer rapidement des dates sans avoir à les taper manuellement dans la plage de colonnes ? Cet article parle de l'affichage d'un calendrier lors du clic sur des cellules dans une certaine plage, puis de l'insertion automatique de la date sélectionnée dans la cellule choisie.
Étape 2 : Activer le calendrier en cliquant sur une cellule
Faire apparaître un calendrier en cliquant sur une cellule spécifique avec un code VBA
Veuillez résoudre ce problème étape par étape comme suit.
Remarque : Cette méthode ne fonctionne que sur Microsoft Excel 32 bits.
Étape 1 : Créer un UserForm avec un calendrier
Veuillez créer un UserForm contenant le calendrier qui s'affichera lorsque vous cliquez sur une cellule.
1. Appuyez simultanément sur Alt + F11 pour ouvrir la fenêtre Microsoft Visual Basic for Applications.
2. Dans la fenêtre Microsoft Visual Basic for Applications, cliquez sur Insérer > UserForm.
3. Ensuite, une fenêtre UserForm et une fenêtre Boîte à outils apparaissent. Dans la Boîte à outils, cliquez sur n'importe quel contrôle, faites un clic droit, puis sélectionnez Contrôles supplémentaires dans le menu contextuel. Voir capture d'écran :
4. Dans la boîte de dialogue Contrôles supplémentaires, faites défiler jusqu'à cocher l'option Contrôle MonthView de Microsoft dans la zone Contrôles disponibles, puis cliquez sur le bouton OK.
5. Vous pouvez alors voir que le bouton MonthView a été ajouté dans la fenêtre Boîte à outils. Cliquez sur ce bouton MonthView, puis cliquez sur la fenêtre UserForm1 pour créer un calendrier dans le UserForm.
Remarque : Vous pouvez ajuster la taille de la fenêtre UserForm pour qu'elle convienne au calendrier inséré en faisant glisser la bordure du UserForm.
6. Double-cliquez sur le calendrier inséré dans le UserForm1, et dans la fenêtre Code, remplacez le code original par le script VBA suivant.
Code VBA : créer un formulaire utilisateur avec un calendrier
Private Sub MonthView1_DateClick(ByVal DateClicked As Date)
On Error Resume Next
Dim xRg As Object
For Each xRg In Selection.Cells
xRg.Value = DateClicked
Next xRg
Unload Me
End Sub
Remarque : Ce code permet d'insérer une date dans la cellule sélectionnée après avoir choisi une date dans le calendrier.
Étape 2 : Activer le calendrier en cliquant sur une cellule
Maintenant, vous devez spécifier certaines cellules pour afficher le calendrier lors du clic. Veuillez procéder comme suit.
7. Double-cliquez sur le nom de la feuille contenant les cellules sur lesquelles vous allez cliquer pour faire apparaître le calendrier dans le volet Projet à gauche, puis copiez et collez le code VBA ci-dessous dans la fenêtre Code. Voir capture d'écran :
Code VBA : Cliquer sur une cellule pour faire apparaître un calendrier
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If (Target.Count = 1) Then
If Not Intersect(Target, Range("A2:A10")) Is Nothing Then UserForm1.Show
End If
End Sub
Remarque : dans le code, A2:A10 sont les cellules sur lesquelles vous cliquerez pour faire apparaître le calendrier. Modifiez la plage de cellules selon vos besoins.
8. Appuyez simultanément sur Alt + Q pour fermer la fenêtre Microsoft Visual Basic for Applications.
Dès maintenant, lorsque vous cliquez sur une cellule dans la plage spécifiée de la feuille de calcul actuelle, un calendrier apparaît comme indiqué dans la capture d'écran ci-dessous. La date sera automatiquement insérée dans la cellule sélectionnée après avoir choisi une date dans le calendrier.
Faire apparaître un calendrier en cliquant sur une cellule spécifique avec un code VBA
Cette section présente l'utilitaire Sélecteur de date de Kutools pour Excel. Après avoir activé cette fonctionnalité, cliquer sur une cellule de date fera apparaître un calendrier, vous permettant de remplacer facilement la date existante par une nouvelle date. Suivez les étapes ci-dessous pour appliquer cette fonctionnalité.
1. Cliquez sur Kutools > Texte > Activer le Sélecteur de date.
2. Après avoir activé cette fonctionnalité, cliquez sur une cellule de date, et une icône de calendrier apparaîtra à droite de la cellule.
3. Cliquez sur l'icône de calendrier pour ouvrir la boîte de dialogue Sélecteur de date, puis cliquez sur une nouvelle date pour remplacer la date dans la cellule sélectionnée.
Notes :
Bouton Annuler : Cliquez sur ce bouton pour annuler le remplacement de la date ;
Bouton Fermer : Cliquez sur ce bouton pour fermer la boîte de dialogue Sélecteur de date ;
- Cette fonctionnalité ne peut être appliquée qu'aux cellules contenant une date.
Si vous souhaitez bénéficier d'un essai gratuit (30 jours) de cet utilitaire, veuillez cliquer pour le télécharger, puis aller appliquer l'opération selon les étapes ci-dessus.
Articles connexes :
- Comment déclencher ou exécuter une macro en cliquant sur une cellule spécifique dans Excel ?
- Comment changer la couleur d'une cellule lorsqu'elle est cliquée ou sélectionnée dans Excel ?
- Comment faire apparaître une boîte de message en cliquant sur une certaine cellule dans Excel ?
- Comment désactiver un bouton après un seul clic dans Excel ?
- Comment désactiver le clic droit sur l'onglet de feuille dans Excel ?
Meilleurs outils de productivité pour Office
Boostez vos compétences Excel avec Kutools pour Excel, et découvrez une efficacité sans précédent. Kutools pour Excel propose plus de300 fonctionnalités avancées pour augmenter la productivité et gagner du temps. Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...
Office Tab apporte une interface à onglets à Office, et facilite grandement votre travail
- Activez la modification et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
- Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
- Augmente votre productivité de50 %, et réduit des centaines de clics de souris pour vous chaque jour !