Note: The other languages of the website are Google-translated. Back to English
English English

Comment faire apparaître un calendrier en cliquant sur une cellule spécifique dans Excel?

En supposant qu'il y ait une plage de colonnes dans une feuille de calcul, vous devez fréquemment entrer et modifier les dates à l'intérieur, mais il est ennuyeux d'entrer ou de modifier la date manuellement par heure. Comment entrer rapidement des dates sans taper manuellement dans la plage de colonnes? Cet article parle de faire apparaître un calendrier lorsque vous cliquez sur des cellules dans une certaine plage, puis d'insérer la date dans la cellule sélectionnée automatiquement après avoir sélectionné la date dans le calendrier.


Afficher un calendrier en cliquant sur une cellule spécifique avec le code VBA

Veuillez résoudre ce problème comme suit étape par étape.

Notes: Cette méthode ne peut fonctionner que sur Microsoft Excel 32 bits.

Étape 1: créer un formulaire utilisateur avec calendrier

Veuillez créer un UserForm qui contient le calendrier que vous afficherez en cliquant sur une cellule.

1. presse autre + F11 touches simultanément pour ouvrir le Microsoft Visual Basic pour applications fenêtre.

2. dans le Microsoft Visual Basic pour applications fenêtre, cliquez sur insérer > Formulaire utilisateur.

3. Puis un Formulaire utilisateur et un Boîte à outils fenêtres pop-up, dans le Boîte à outils, cliquez sur n'importe quel contrôle et faites un clic droit, puis sélectionnez Contrôles supplémentaires dans le menu contextuel. Voir la capture d'écran:

4. dans le Contrôles supplémentaires boîte de dialogue, faites défiler vers le bas pour vérifier Contrôle Microsoft MonthView option dans la Commandes disponibles , puis cliquez sur le OK .

5. Ensuite, vous pouvez voir le Vue du mois le bouton est ajouté dans le Boîte à outils la fenêtre. Cliquez sur ce bouton MonthView, puis cliquez sur la fenêtre UserForm1 pour créer un calendrier dans le Userform.

Notes: Vous pouvez ajuster la taille de la fenêtre UserForm pour l'adapter au calendrier inséré en faisant glisser la bordure de l'UserForm.

6. Double-cliquez sur le calendrier inséré dans UserForm1 et dans le Code fenêtre, veuillez remplacer le code d'origine par le script VBA suivant.

VBA code: create a user form with calendar

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

Notes: Ce code peut aider à insérer la date dans la cellule sélectionnée après avoir sélectionné la date dans le calendrier.

Étape 2: Activez le calendrier en cliquant sur la cellule

Vous devez maintenant spécifier certaines cellules pour afficher le calendrier lorsque vous cliquez sur. Veuillez faire comme suit.

7. Double-cliquez sur le nom de la feuille qui contient les cellules sur lesquelles vous cliquerez pour faire apparaître le calendrier à gauche Le projet NetPoulSafe volet, puis copiez et collez le code VBA ci-dessous dans la fenêtre Code. Voir la capture d'écran:

VBA code: Click cell to pop up calendar

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

Notes: dans le code, A2: A10 sont des cellules sur lesquelles vous cliquerez pour faire apparaître le calendrier. Veuillez modifier la plage de cellules selon vos besoins.

8. presse autre + Q touches simultanément pour fermer le Microsoft Visual Basic pour applications fenêtre.

À partir de maintenant, lorsque vous cliquez sur une cellule à l'intérieur de la plage spécifiée dans la feuille de calcul actuelle, un calendrier apparaîtra comme illustré ci-dessous. Et la date sera insérée automatiquement dans la cellule sélectionnée après avoir sélectionné la date dans le calendrier.


Afficher un calendrier en cliquant sur une cellule spécifique avec le code VBA

Cette section présente le Sélecteur de date utilité de Kutools pour Excel. Après avoir activé cette fonctionnalité, cliquez sur une cellule de date pour faire apparaître un calendrier, vous pouvez facilement remplacer la date existante par une nouvelle date. Veuillez suivre les étapes ci-dessous pour appliquer cette fonctionnalité.

1. Cliquez Kutools > Contenu > Activer le sélecteur de date.

2. Après avoir activé cette fonction, cliquez sur une cellule de date et une icône de calendrier apparaîtra directement dans la cellule.

3. Cliquez sur l'icône du calendrier pour ouvrir le Sélecteur de date boîte de dialogue, 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 dates;
  • Cette fonctionnalité ne peut s'appliquer 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 passez à appliquer l'opération selon les étapes ci-dessus.


Articles connexes:


Les meilleurs outils de productivité de bureau

Kutools for Excel résout la plupart de vos problèmes et augmente votre productivité de 80%

  • Réutilisation: Insérer rapidement formules complexes, graphiques et tout ce que vous avez utilisé auparavant; Crypter les cellules avec mot de passe; Créer une liste de diffusion et envoyer des e-mails ...
  • Barre Super Formula (modifiez facilement plusieurs lignes de texte et de formule); Disposition de lecture (lire et modifier facilement un grand nombre de cellules); Coller dans la plage filtréeplus
  • Fusionner les cellules / lignes / colonnes sans perdre de données; Contenu des cellules divisées; Combiner des lignes / colonnes en double... Empêcher les cellules en double; Comparer les gammesplus
  • Sélectionnez Dupliquer ou Unique Lignes; Sélectionnez les lignes vides (toutes les cellules sont vides); Super Find et Fuzzy Find dans de nombreux classeurs; Sélection aléatoire ...
  • Copie exacte Plusieurs cellules sans changer la référence de formule; Créer automatiquement des références à plusieurs feuilles; Insérer des puces, Cases à cocher et plus encore ...
  • Extrait du texte, Ajouter du texte, Supprimer par position, Supprimer l'espace; Créer et imprimer des sous-totaux de pagination; Conversion entre le contenu et les commentaires des cellulesplus
  • Super filtre (enregistrer et appliquer des schémas de filtrage à d'autres feuilles); Tri avancé par mois / semaine / jour, fréquence et plus; Filtre spécial par gras, italique ...
  • Combiner des classeurs et des feuilles de travail; Fusionner les tableaux en fonction des colonnes clés; Diviser les données en plusieurs feuilles; Conversion par lots xls, xlsx et PDFplus
  • Plus de 300 fonctionnalités puissantes. Prend en charge Office / Excel 2007-2019 et 365. Prend en charge toutes les langues. Déploiement facile dans votre entreprise ou organisation. Essai gratuit de 30 jours. Garantie de remboursement de 60 jours.
onglet kte 201905

Office Tab apporte une interface à onglets à Office et simplifie considérablement votre travail

  • Activer l'édition 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é de 50% et réduit des centaines de clics de souris chaque jour!
bas de cabine
Commentaires (18)
Pas encore de notes. Soyez le premier à évaluer!
Ce commentaire a été minimisé par le modérateur sur le site
Je souhaite afficher le calendrier contextuel sous la cellule sélectionnée. Comment dois-je faire ?
Ce commentaire a été minimisé par le modérateur sur le site
J'ai utilisé ces codes VBA et tout va bien jusqu'à présent. La plage est A2: A10 et le calendrier apparaît lorsque vous y sélectionnez une cellule. Mais si vous marquez à nouveau la ligne de 2 à 10, le calendrier apparaît à nouveau. C'est la même chose avec la colonne "A" si vous la marquez, encore une fois le calendrier apparaît. Comment dois-je procéder pour obtenir le calendrier uniquement dans la plage que j'ai définie ?
Ce commentaire a été minimisé par le modérateur sur le site
Bonjour à tous,

Quelqu'un peut-il me dire comment afficher un calendrier dans une plage de cellules, mais en commençant uniquement par la cellule juste en dessous d'un en-tête de tableau et en bas dans une colonne Excel.


Merci d'avance.
Ce commentaire a été minimisé par le modérateur sur le site
Good Day,
Désolé, je n'ai pas compris votre question. Ce serait bien si vous pouviez fournir une capture d'écran de ce que vous essayez de faire.
Ce commentaire a été minimisé par le modérateur sur le site
Utiliser c'est-à-dire : Range("B6:C30")
Ce commentaire a été minimisé par le modérateur sur le site
Utiliser c'est-à-dire : Range("B6:C30")
Ce commentaire a été minimisé par le modérateur sur le site
tarihi seçebiliyorum ama a1:a10 hücrelerine seçtiğim tarih eklenmiyor. teşekkür ederim
Ce commentaire a été minimisé par le modérateur sur le site
si j'essaie de sélectionner une ligne, la fenêtre contextuelle s'active et la date apparaît dans chaque cellule de cette ligne


Comment puis-je éviter ça
Ce commentaire a été minimisé par le modérateur sur le site
Salut Sam,
Le code a été mis à jour dans l'article avec la résolution de problème. S'il vous plaît essayez et merci pour votre commentaire.
Ce commentaire a été minimisé par le modérateur sur le site
Salve il codice funziona benissimo, ma se volessi farlo funzionare anche su un altro foglio
Ce commentaire a été minimisé par le modérateur sur le site
Salut, Est-il possible de mettre la fenêtre contextuelle du sélecteur de date pour plusieurs colonnes, car dans ma feuille, j'ai "date de début", "date de fin" et "date d'accord". si oui alors comment ?
Ce commentaire a été minimisé par le modérateur sur le site
Salut Jejet,
Suivez les étapes et remplacez la plage "A2: A10" dans le deuxième code VBA par votre plage de colonnes (telle que C2: E2).
Ce commentaire a été minimisé par le modérateur sur le site
Merci beaucoup! Ces instructions ont été super utiles :)
Ce commentaire a été minimisé par le modérateur sur le site
Le calendrier s'affiche mais lorsque je clique sur la date, la cellule ne se remplit pas
Ce commentaire a été minimisé par le modérateur sur le site
Hi,
Le code fonctionne bien dans mon cas. Quelle version d'Excel utilisez-vous ?
Ce commentaire a été minimisé par le modérateur sur le site
Il n'y a pas de contrôle Microsoft MonthView répertorié (Office 365), et les instructions ici n'expliquent pas comment on obtiendrait ce contrôle, donc c'est pratiquement inutile sauf si vous utilisez une ancienne version d'Excel.
Ce commentaire a été minimisé par le modérateur sur le site
Je ne vois pas le Microsoft MonthView Control dans la liste, mais il se peut que Pete (#32847) ait mentionné que cela ne fonctionnera pas dans Office 365 ou Microsoft Office 64 bits.
Ce commentaire a été minimisé par le modérateur sur le site
Salut Teagan Caudle,
J'ai recherché et essayé les méthodes suggérées dans google, mais je n'ai finalement pas pu enregistrer le contrôle MonthView dans Microsoft 365.
Désolé pour le dérangement. Peut-être que vous pouvez vérifier cela.
https://social.technet.microsoft.com/Forums/Azure/en-US/db3b4dff-aad7-4d88-87cc-8f3f117be550/microsoft-windows-common-controls-60-for-office-2016
Il n'y a pas encore de commentaires postés ici
Laisser vos commentaires
Publier en tant qu'invité
×
Évaluez cet article:
0   Personnages
Emplacements suggérés