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

Comment ajouter / saisir automatiquement la date / l'heure actuelle dans une cellule en double-cliquant dans Excel?

Si vous devez insérer fréquemment la date actuelle ou l'heure de la date dans une feuille de calcul, vous pouvez essayer la méthode de cet article. Cet article vous aidera à ajouter ou à entrer automatiquement la date ou la date du jour dans une cellule de plage spécifiée en double-cliquant uniquement.

Double-cliquez pour ajouter / saisir automatiquement la date actuelle ou l'heure avec le code VBA


Double-cliquez pour ajouter / saisir automatiquement la date actuelle ou l'heure avec le code VBA


Vous pouvez exécuter le code VBA ci-dessous pour ajouter automatiquement la date ou l'heure actuelle dans une cellule en double-cliquant. Veuillez faire comme suit.

1. Cliquez avec le bouton droit de la souris sur l'onglet Feuille dont vous souhaitez insérer la date actuelle dans les cellules spécifiées, puis sélectionnez Voir le code dans le menu contextuel.

2. dans le Microsoft Visual Basic pour Applications fenêtre, copiez et collez le code VBA ci-dessous dans la fenêtre Code.

Code VBA: double-cliquez pour ajouter la date actuelle dans une cellule

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If Not Intersect(Target, Range("A1:B10")) Is Nothing Then
        Cancel = True
        Target.Formula = Date
    End If
End Sub

Notes:

1. Dans le code, A1: B10 est la plage à laquelle vous ajouterez la date actuelle.
2. Si vous devez ajouter la date et l'heure dans la cellule, veuillez remplacer Date en À présent() dans le code. Vous pouvez les changer selon vos besoins.

3. presse autre + Q touches simultanément pour fermer le Microsoft Visual Basic pour applications et revenez à la feuille de calcul.

À partir de maintenant, lorsque vous double-cliquez sur une cellule de la plage spécifiée A1: B10. La date ou l'heure actuelle sera saisie automatiquement.


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 (26)
Pas encore de notes. Soyez le premier à évaluer!
Ce commentaire a été minimisé par le modérateur sur le site
Comment pouvons-nous étendre cela pour ajouter plus de plage de cellules ? J'ai ajouté une cellule supplémentaire au code : (Target, Range("C10:C19", "D10:D19", "E10:E19")) mais cela me donne une erreur de compilation disant "mauvais nombre d'arguments ou affectations de propriétés invalides ", puis il met en surbrillance la première ligne de code que vous avez fournie" Private Sub Worksheet_BeforeDoubleClick (ByVal Target As Range, Cancel As Boolean) " Veuillez m'aider.
Ce commentaire a été minimisé par le modérateur sur le site
Joel, je ne sais pas si vous cherchez toujours une solution, mais vous devez modifier votre code :

De : (Cible, Plage("C10:C19", "D10:D19", "E10:E19"))
À : (Cible, Plage("C10:C19,D10:D19,E10:E19"))

Cela le fera pour vous.
Ce commentaire a été minimisé par le modérateur sur le site
Bonjour Nick,
J'aimerais avoir des conseils de votre part sur ce sujet....
J'ai un fichier que j'appelle "feuille de productivité".... Sur cette feuille, j'aimerais insérer l'heure réelle, dans les cellules sélectionnées, lorsque la cellule est cliquée... (Si possible, j'aimerais que ces cellules après le temps semble devenir immuable ..... quelque chose comme être verrouillé.)
J'apprécie votre temps et merci d'avance
Attila, Hongrie
exyzee@gmail.com
Ce commentaire a été minimisé par le modérateur sur le site
Cher Attila,
Veuillez essayer la capture d'écran ci-dessous pour insérer l'heure réelle de la cellule dans une certaine plage lorsque vous cliquez dessus.
(La fonction de verrouillage automatique des cellules ne peut pas être atteinte, désolé pour cela)

Private Sub Worksheet_SelectionChange (Cible ByVal en tant que plage)
Application.ScreenUpdating = Faux
Si ce n'est pas l'intersection (cible, plage ("A1: B10")) n'est rien alors
Annuler = Vrai
Cible.Formule = Date
Si fin
End Sub
Ce commentaire a été minimisé par le modérateur sur le site
Le code fonctionne vraiment... Merci...j'ai ajouté un autre code pour protéger la cellule après la saisie des données. Maintenant, le problème est que, une fois que j'entre les données et que la cellule est protégée et par erreur si je double-clique sur la cellule protégée, le code ci-dessus se trompe pour toute la feuille. Cela ne fonctionne pas alors. Je dois déprotéger la feuille pour mettre le code en direct. Toute solution?

Le code de protection utilisé est ci-dessous :

Private Sub Worksheet_Change (Cible ByVal en tant que plage)
Dim xRg As Range
On Error Resume Next
Définir xRg = Intersection(Plage("A1:a1000,b1:b1000,G1:G1000"), Cible)
Si xRg n'est rien, quittez Sub
Target.Worksheet.Unprotect Mot de passe :="123"
xRg.Locked = Vrai
Target.Worksheet.Protect Mot de passe :="123"
End Sub
Ce commentaire a été minimisé par le modérateur sur le site
Cher Paul,
J'essaie le code que vous avez fourni. La feuille de calcul entière sera protégée immédiatement une fois que j'aurai saisi des données dans l'une des cellules protégées spécifiées.
De plus, lorsque vous double-cliquez sur la cellule protégée, rien ne change le code dans mon cas.
Pourriez-vous expliquer ce que vous essayez exactement de faire avec le code ?
Ce commentaire a été minimisé par le modérateur sur le site
Désolé, je comprends votre point. (manque le code ci-dessus)
Ce commentaire a été minimisé par le modérateur sur le site
Le code de saisie du double clic créé est :


Private Sub Worksheet_BeforeDoubleClick (ByVal Target As Range, Cancel As Boolean)
Si ce n'est pas Intersection(Cible, Plage("A1:a1000")) N'est rien alors
Annuler = Vrai
Cible.Formule = Date
Si fin

Si ce n'est pas Intersection(Cible, Plage("b1:b1000")) N'est rien Alors
Annuler = Vrai
Cible.Formule = Temps
Si fin

Si ce n'est pas l'intersection (cible, plage ("g1: g1000")) n'est rien alors
Annuler = Vrai
Cible.Formule = Temps
Si fin
End Sub
Ce commentaire a été minimisé par le modérateur sur le site
Cher Paul,
Veuillez essayer le code VBA suivant.

Private Sub Worksheet_Change (Cible ByVal en tant que plage)
Dim xRg As Range
On Error Resume Next
Définir xRg = Intersection(Plage("A1:a1000,b1:b1000,G1:G1000"), Cible)
Si xRg n'est rien, quittez Sub
Target.Worksheet.Unprotect Mot de passe :="123"
xRg.Locked = Vrai
Target.Worksheet.Protect Mot de passe :="123"
End Sub

Private Sub Worksheet_BeforeDoubleClick (ByVal Target As Range, Cancel As Boolean)
Application.EnableEvents = False
ActiveSheet.Unprotect Password :="123"
Si ce n'est pas Intersection(Cible, Plage("A1:a1000")) N'est rien alors
Annuler = Vrai
Cible.Formule = Date
Si fin
Si ce n'est pas Intersection(Cible, Plage("b1:b1000")) N'est rien Alors
Annuler = Vrai
Cible.Formule = Temps
Si fin
Si ce n'est pas l'intersection (cible, plage ("g1: g1000")) n'est rien alors
Annuler = Vrai
Cible.Formule = Temps
Si fin
ActiveSheet.Protect Mot de passe :="123"
Application.EnableEvents = True
End Sub
Ce commentaire a été minimisé par le modérateur sur le site
J'ai copié et collé le code mettant à jour la plage et cela n'a pas fonctionné :-(


Private Sub Worksheet_BeforeDoubleClick (ByVal Target As Range, Cancel As Boolean)
Si ce n'est pas l'intersection (cible, plage ("B4: B100")) n'est rien alors
Annuler = Vrai
Cible.Formule = Maintenant()
Si fin
End Sub
Ce commentaire a été minimisé par le modérateur sur le site
Bonne journée,
Le code fonctionne bien dans mon cas. Pouvez-vous m'indiquer votre version d'Office ?
Ce commentaire a été minimisé par le modérateur sur le site
Bonjour, le code que vous avez donné fonctionne très bien. Je suis juste curieux de savoir s'il existe un moyen d'avoir le texte "double-clic pour ajouter la date" dans la cellule jusqu'à ce que la date soit saisie. Merci d'avance (j'essaie de rendre mon document aussi convivial que possible afin de ne pas confondre mes collègues)
Ce commentaire a été minimisé par le modérateur sur le site
Bonjour, le code ci-dessus a très bien fonctionné pour moi. Maintenant, je me demande simplement s'il existe un moyen de faire apparaître le texte "Double-cliquez pour entrer la date" dans la cellule jusqu'à ce que la date soit saisie. Mon objectif est de rendre le document aussi convivial que possible. Merci d'avance
Ce commentaire a été minimisé par le modérateur sur le site
Salut Travis,
Nous ne pouvons pas modifier le code pour que le texte s'affiche directement dans la cellule. Mais alternativement, le code optimisé ci-dessous aidera à afficher le texte dans le commentaire de la cellule, et le commentaire sera automatiquement supprimé après un double-clic sur la cellule pour entrer la date.

Private Sub Worksheet_SelectionChange (Cible ByVal en tant que plage)
Si ce n'est pas l'intersection (cible, plage ("A1: B10")) n'est rien alors
Target.NoteText "double-clic pour ajouter une date"
Si fin
End Sub

Private Sub Worksheet_BeforeDoubleClick (ByVal Target As Range, Cancel As Boolean)
Si ce n'est pas l'intersection (cible, plage ("A1: B10")) n'est rien alors
Annuler = Vrai
Cible.Commentaire.Supprimer
Cible.Formule = Date
Si fin
End Sub
Ce commentaire a été minimisé par le modérateur sur le site
Salut,

J'ai copié et collé le code ci-dessus exactement tel qu'il est écrit dans un classeur vierge, cependant, cela ne fonctionne pas pour moi. J'ai regardé différentes sources sur le Web et la plupart des sites ont un format similaire à ce qui est écrit ci-dessus. Je pense qu'il y a peut-être quelque chose qui ne va pas avec mon VBA ou que certains paramètres ne sont pas activés. Tout conseil serait très apprécié. J'exécute Excel pour Office 365 MSO (16.0.11001.20097) 32 bits sur Windows 10.
Ce commentaire a été minimisé par le modérateur sur le site
J'adore le code et il fonctionne très bien. Comment puis-je faire en sorte que lorsque je double-clique pour exécuter le code, il affiche l'heure en temps militaire?
Ce commentaire a été minimisé par le modérateur sur le site
Salut Dylan,
Désolé, je ne peux pas encore vous aider. Merci pour votre commentaire.
Ce commentaire a été minimisé par le modérateur sur le site
Je pense que si vous sélectionnez le format d'heure militaire pour cette cellule dans les options Format -> Nombre -> Heure de votre feuille, cela devrait fonctionner. Par exemple, il donne l'option de 1h30 ou 13h30, donc vous devez simplement sélectionner 13h30 et cela devrait le faire.
Ce commentaire a été minimisé par le modérateur sur le site
Je pense que si vous sélectionnez simplement le format de l'heure militaire pour cette cellule à partir des options de format Nombre -> Heure, cela devrait le faire. Par exemple, vous sélectionneriez 13h30 au lieu de 1h30, puis l'heure militaire devrait s'afficher.
Ce commentaire a été minimisé par le modérateur sur le site
Est-ce que quelqu'un sait s'il existe un moyen d'insérer ce code dans Excel Online ? Je l'avais utilisé avec la version de bureau et cela fonctionnait très bien, mais maintenant nous avons tout migré vers la plate-forme en ligne et mes horodatages sur double clic ont disparu et je ne sais pas comment afficher ou modifier le code. Merci.
Ce commentaire a été minimisé par le modérateur sur le site
J'ai donc inséré du code et cela fonctionne très bien sur plusieurs feuilles de mon classeur, mais sur certaines feuilles, il cesse soudainement de fonctionner après une certaine ligne, même si la plage correcte est entrée. Toutes les pensées sur pourquoi cela pourrait arriver.
Ce commentaire a été minimisé par le modérateur sur le site
C'était exactement ce que je cherchais - cela fait gagner beaucoup de temps et j'apprécie les instructions bien écrites. Merci!
Ce commentaire a été minimisé par le modérateur sur le site
Bonjour, le code a fait beaucoup pour moi, comment puis-je restreindre le code pour qu'il ne fonctionne que si le champ est vide. Si une date est déjà présente dans la cellule, un double-clic ne devrait rien faire, cordialement
Ce commentaire a été minimisé par le modérateur sur le site
Salut Ahmed,
Désolé pour le dérangement. Pour remplir uniquement les cellules vides avec des dates en double-cliquant, vous pouvez appliquer le code VBA suivant pour le faire.
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
'Updated by Extendoffice 20220609
    If Not Intersect(Target, Range("B1:C20")) Is Nothing Then
        If Target.Value = "" Then
            Cancel = True
            Target.Formula = Date
        End If
    End If
End Sub
Ce commentaire a été minimisé par le modérateur sur le site
Cette fonction n'a pas fonctionné. Double-cliquer entre simplement l'édition manuelle de la cellule.
Ce commentaire a été minimisé par le modérateur sur le site
Salut Bob,
Le code fonctionne bien dans mon cas. J'ai besoin d'en savoir plus sur votre problème, comme votre version d'Excel.
Et le code ne fonctionne que sur les cellules que vous avez spécifiées.
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