Date et heure automatique saisie cellule Excel

Résolu
CharlesDB Messages postés 91 Statut Membre -  
 you -
Bonjour,

Je souhaite obtenir de l'aide pour mettre en place si cela est possible un système permettant d'indiquer l'heure et la date automatiquement lorsque je saisi des données dans une cellule.

Par exemple, j'écris "100" dans ma cellule A1 et je souhaite que dans ma cellule B1 il soit affiché automatiquement "20h34 - 15/02/2013" ce qui correspond en fait au format suivant : "hh mm dd mm yyyy".

Cordialement,
CharlesDB

10 réponses

  1. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Salut,

    Tu aurais aussi vite fait de faire un simple clic sur deux touches Ctrl et point virgule

    avec la fonction Maintenent la date changera tous les jours et avec un code VBA le fait de changer la donnée en A entrainera automatiquement le changement de la date en B
    si c'est que tu cherches, clic droit sur l'onglet de ta feuille et colle ce code

    Private Sub Worksheet_Change(ByVal Target As Range)
    On Error Resume Next
    If Not Intersect(Target, [A1:A100]) Is Nothing Then
    Target(1, 2) = Now
    End If
    End Sub

    si le code se limite à cette simple saisie tu peux écourter le code comme ceci

    Private Sub Worksheet_Change(ByVal Target As Range)
    On Error Resume Next
    If Not Intersect(Target, [A1:A100]) Is Nothing Then Target(1, 2) = Now
    End Sub

    il est possible de figer la date en B pour éviter tout changement après postérieur et obliger la modification manuelle mais on verra plus tard
    A+
    Mike-31

    Une période d'échec est un moment rêvé pour semer les graines du savoir.
    6
    1. hops007 Messages postés 6 Statut Membre
       
      Bonjour Tout le monde
      Grace au code de Mike-31 j'ai pu résoudre la moitié de mon problème, cependant j'aimerais bien que le résultat soit figé

      Merci d'avance à vous tous
      Très bonne journée
      0
    2. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
       
      Bonjour,

      Que veux tu dire par "cependant j'aimerais bien que le résultat soit figé "
      Cordialement
      Mike-31
      0
    3. khaoulasai Messages postés 1 Statut Membre
       
      bonjour
      M. mike-31 je tiens a vous remercie pour le code ... je veux savoir si je peux figé le résultat par exp : quand je fais entré une valeur dans A1 j'aurai "13/08/2014 09:56:17 " dans B1 , si après une heurs je ferai des modifications dans la cellule A1 la cellule B1 reçoit "13/08/2014 10:56:17 " alors que moi je veux gardé la 1ère date ... mercii
      0
    4. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
       
      Salut Khoulasai,

      je découvre ta demande en rentrant de vacance, essaye ce code

      Private Sub Worksheet_Change(ByVal Target As Range)
      On Error Resume Next
      If Not Intersect(Target, [A1:A100]) Is Nothing Then
      If Target(1, 2) = "" Then Target(1, 2) = Now
      End If
      End Sub
      0
    5. Gor > Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention  
       
      salut Mike-31 j'ai le même problème mais je sais pas comment m'y prendre pour l'exécuter dans la cellule Excel comment faire?
      0
  2. Raymond PENTIER Messages postés 58225 Date d'inscription   Statut Contributeur Dernière intervention   17 488
     
    Salut.

    La fonction MAINTENANT() affiche la date et l'heure instantanées, mais se met à jour (et à l'heure) chaque fois qu'on fait la moindre modification dans le fichier ...
    La formule est =SI(A1="";"";MAINTENANT()) mais il faudrait faire un Copier/Collage spécial/Valeur pour fixer le résultat, ce qui devient vite fastidieux.

    Mais ne désespère pas ; je suis à peu près certain qu'un autre habitué du forum te donnera bientôt la bonne méthode.

    Cordialement.

    C'est bien, la retraite ! Surtout aux Antilles ... :-)
    ☻ Raymond ♂
    2
  3. CharlesDB Messages postés 91 Statut Membre 27
     
    Tout d'abord merci à tous pour vos réponses, ça me fait plaisir de voir que des personnes soient intéressés et m'aident pour parvenir à faire face à ce problème.

    J'ai choisi le premier code de Mike-31 qui est le suivant :
    Private Sub Worksheet_Change(ByVal Target As Range) 
    On Error Resume Next 
    If Not Intersect(Target, [A1:A100]) Is Nothing Then 
    Target(1, 2) = Now 
    End If 
    End Sub 
    


    J'ai fait plusieurs essais et j'ai trouvé que c'était celui qui me convenait le mieux.

    Un grand merci à vous encore, et je vous recontacte en cas de besoin !

    Cordialement,
    CharlesDB
    1
  4. J.moda Messages postés 2 Statut Membre 1
     
    Bonjour,

    Je me permets de vous contacter car j'ai un petit souci avec un calcul de date.

    En cellule B16 : 10/10/2013
    En cellule C16 : 10/10/2013
    J'ai comme formule : =somme(C16-B16)

    Avec cette formule, le résultat est 0 alors que la personne a été de passage durant ce jour là en notre établissement.
    Comment dois-je faire ou quelle formule dois-je employer pour que le résultat soit 1 et pas 0

    Par contre avec la formule =somme(C16-B16+1), le résultat est 1 évidemment mais lorsque mes cellules B16 et C16 sont vides, le résultat indiqué est toujours 1 alors qu'il devrait mettre 0...

    Bref je tourne en rond...
    Merci pour votre aide.
    Jérôme
    1
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Bonjour,

    Et oui c'est le principe des intervalles+1
    mais pour répondre à ta question que tu aurais due poser dans ta propre discussion

    =SI(NBVAL(B16:C16)<2;"";C16-B16+1)
    ou encore
    =SI(NBVAL(B16:C16)<2;"";SOMME(C16-B16)+1)
    1
  7. Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 453
     
    Bonjour

    pour un champ de A1 à A1000

    clic droit sur le nom de l'onglet

    Dans le menu choisir:"visualiser le code"

    coller ce code et ajuster les champs selon besoins

    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    'désignation de la ligne sélectionnée
    Dim Rw As Long
    Rw = Target.Row
    'Limites de la zone activée
    If Target.Column = 1 And Target.Row > 1 And Target.Row < 1000 Then
    'Sélection et valeur cellule résultat
    Range("B" & Rw).Select
    ActiveCell.FormulaR1C1 = Now
    End If
    End Sub


    crdlmnt
    0
  8. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Re,

    Dans ce cas pourquoi ne pas avoir retenu celui le deuxième plus court qui fait la même chose

    Private Sub Worksheet_Change(ByVal Target As Range)
    On Error Resume Next
    If Not Intersect(Target, [A1:A100]) Is Nothing Then Target(1, 2) = Now
    End Sub

    et pourquoi ne pas pousser la réflexion plus loin et protéger la saisie de sorte à ne pas modifier cette dernière par erreur
    0
    1. CharlesDB Messages postés 91 Statut Membre 27
       
      Bonjour,
      Je m'excuse pour mon temps de réponse.

      En effet, votre proposition m'intéresse, protéger la saisie de donner peut être un élément intéressant pour moi.

      Je ne vous répondrai pas avant une semaine, je n'ai pas accès à internet régulièrement.

      Très cordialement,
      CharlesDB
      0
  9. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Re,

    On verra ça dans une dizaine de jours, ski oblige si je ne me casse pas une patte
    0
    1. CharlesDB Messages postés 91 Statut Membre 27
       
      Pareil :)
      0
  10. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Re Ok à dans une semaine, ou vas tu faire du ski
    0
    1. CharlesDB Messages postés 91 Statut Membre 27
       
      J'étais sur Avoriaz, beau temps toute la semaine et neige top au début mais fondue a la fin du séjour !
      0
  11. J.moda Messages postés 2 Statut Membre 1
     
    Merci bcp pour votre aide ! Ca marche :)

    Je suis comblé ! ;)

    Excellent WE.

    Jérôme
    0