Figer une heure dans une cellule
Résolu
db06
Messages postés
37
Date d'inscription
Statut
Membre
Dernière intervention
-
sam -
sam -
Bonjour,
Dans le tableau que je prépare, je souhaite qu'à chaque fois que je valide une case, l'heure réelle (de l'ordi) s'affiche dans la cellule d'à coté. Le problème en utilisant la fonction maintenant(), c'est que toutes les heures précédentes sont modifiées et égales à la dernière valeur. Avez-vous une solution "simple" sans passer par une macro.
Merciiiiiiiiiiii.
Dans le tableau que je prépare, je souhaite qu'à chaque fois que je valide une case, l'heure réelle (de l'ordi) s'affiche dans la cellule d'à coté. Le problème en utilisant la fonction maintenant(), c'est que toutes les heures précédentes sont modifiées et égales à la dernière valeur. Avez-vous une solution "simple" sans passer par une macro.
Merciiiiiiiiiiii.
A voir également:
- Figer une heure dans une cellule
- Aller à la ligne dans une cellule excel - Guide
- Figer une colonne excel - Guide
- Bloquer une cellule excel - Guide
- Excel cellule couleur si condition texte - Guide
- Changement d'heure - Guide
14 réponses
Re,
On va faire simple exemple si tu saisis une valeur colonne A entre A1 et dans mon exemple A50
et tu souhaites que la date s'affiche en colonne B sur la même ligne
clic droit sur l'onglet de feuille concernée/Visualiser le code
colle le code ci-dessous dans la feuille blanche qui s'ouvre
revient sur ta feuille de calcul en cliquant sur le signe l'outil Excel dans la barre d'outil
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1:A50")) Is Nothing Then
Target.Offset(0, 1) = Date
End If
End Sub
On va faire simple exemple si tu saisis une valeur colonne A entre A1 et dans mon exemple A50
et tu souhaites que la date s'affiche en colonne B sur la même ligne
clic droit sur l'onglet de feuille concernée/Visualiser le code
colle le code ci-dessous dans la feuille blanche qui s'ouvre
revient sur ta feuille de calcul en cliquant sur le signe l'outil Excel dans la barre d'outil
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1:A50")) Is Nothing Then
Target.Offset(0, 1) = Date
End If
End Sub
Merci "Mike-31" et "chossette9",
en fait je veux que l'affichage de l'heure soit automatique.
Avec une formule du style: =si(esttexte(F2);...........?
Merci de votre concours.
en fait je veux que l'affichage de l'heure soit automatique.
Avec une formule du style: =si(esttexte(F2);...........?
Merci de votre concours.
As tu une proposition de macro pour réaliser cette fonction et peux tu m'expliquer comment l'installer.
cordialement
cordialement
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
merci de ton aide,
la solution que tu me proposes ne marche pas. Pour que la date s'affiche dans la cellule B, il faut cliquer dessus et je n'ai pas l'heure...
Merci d'avoir essayer, je ne pensais pas que cela pouvait être si compliqué.
cordialement
la solution que tu me proposes ne marche pas. Pour que la date s'affiche dans la cellule B, il faut cliquer dessus et je n'ai pas l'heure...
Merci d'avoir essayer, je ne pensais pas que cela pouvait être si compliqué.
cordialement
Re,
Non la solution est là, explique seulement ton problème
Tu veux quoi la date, l'heure ou la date et l'heure !
ensuite dans quelle colonne !
et à partir de quelle action en saisissant une données dans une cellule !
et dans quelle plage exemple A1 à A500 !
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
Non la solution est là, explique seulement ton problème
Tu veux quoi la date, l'heure ou la date et l'heure !
ensuite dans quelle colonne !
et à partir de quelle action en saisissant une données dans une cellule !
et dans quelle plage exemple A1 à A500 !
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
Bonjour,
La macro de mike marche très bien, il faut saisir qcq chose en A pour que la date s'affiche en B.
Si tu veux l'heure remplace =Date par =Time
http://www.cijoint.fr/cjlink.php?file=cj201105/cijwtifPhS.xls
eric
La macro de mike marche très bien, il faut saisir qcq chose en A pour que la date s'affiche en B.
Si tu veux l'heure remplace =Date par =Time
http://www.cijoint.fr/cjlink.php?file=cj201105/cijwtifPhS.xls
eric
Après reessai sur une page vierge , c'est OK tout baigne. J'ai remplacé Date par Time et j'ai l'heure dans le format voulu.
Mais dans la feuille de mon fichier, j'ai des cellules avec liste déroulante sur C7 ....C11 et l'heure doit s'afficher en D7 ...D11.
Dans ton programme j'ai remplacé "Range("A1:A50")) " par "Range("C7:C11"))", mais l'heure ne s'affiche pas.
Guide moi encore un peu .....
cordialement
Mais dans la feuille de mon fichier, j'ai des cellules avec liste déroulante sur C7 ....C11 et l'heure doit s'afficher en D7 ...D11.
Dans ton programme j'ai remplacé "Range("A1:A50")) " par "Range("C7:C11"))", mais l'heure ne s'affiche pas.
Guide moi encore un peu .....
cordialement
Re, salut Eriiic,
Oui tout a fait mais avec une liste de validation de données il ne devrait pas y avoir de problème
et pour compléter l'affichage, il est possible d'afficher la date, l'heure ou les deux avec Now
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("C7:C11")) Is Nothing Then
Target.Offset(0, 1) = Now
End If
End Sub
cordialement
Mike-31
Oui tout a fait mais avec une liste de validation de données il ne devrait pas y avoir de problème
et pour compléter l'affichage, il est possible d'afficher la date, l'heure ou les deux avec Now
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("C7:C11")) Is Nothing Then
Target.Offset(0, 1) = Now
End If
End Sub
cordialement
Mike-31
Salut Mike31,
Toujour pareil, sur une feuille vierge ça va, mais sur mon fichier ça bloque.
Est il possible que je te joigne mon fichier pour voir ce qui ne va pas.
Bien cordialement
Toujour pareil, sur une feuille vierge ça va, mais sur mon fichier ça bloque.
Est il possible que je te joigne mon fichier pour voir ce qui ne va pas.
Bien cordialement
Tel le débutant moyen je viens de me rendre compte que tout fonctionne au poil, en fermant puis réouvrant le fichier la macro a du s'enregistrer.....
Puis-je recopier autant de fois la macro en changeant les coordonnées des cellules, pour les différents tableaux de ma feuille ?
Merci pour toute ta compétence et ta bienveillance.
Bien cordialement
Puis-je recopier autant de fois la macro en changeant les coordonnées des cellules, pour les différents tableaux de ma feuille ?
Merci pour toute ta compétence et ta bienveillance.
Bien cordialement
Re,
Si le code est destiné à une feuille, il est impossible d'utiliser la même syntaxe pour la même feuille
Private Sub Worksheet_Change(ByVal Target As Range)
il faut simplement compléter le code.
on pourrait écrire le code différemment, mais pour faire simple, et suivre facilement l'action je te conseille à tes débuts d'écrire le code par ligne
cette ligne saisie la date et l'heure en D7;D11 si tu saisis une valeur en C7:C11
If Not Intersect(Target, Range("C7:C11")) Is Nothing Then Target.Offset(0, 1) = Now
cette ligne saisie l'heure en H1:H10 lorsque tu saisis une valeur en F1:F10 (saute une colonne)
A toi d'essayer de l'adapter et éventuellement d'ajouter des lignes
exemple de code à coller dans les propriété de la feuille
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("C7:C11")) Is Nothing Then Target.Offset(0, 1) = Now
If Not Intersect(Target, Range("F1:F10")) Is Nothing Then Target.Offset(0, 2) = Time
End Sub
Si le code est destiné à une feuille, il est impossible d'utiliser la même syntaxe pour la même feuille
Private Sub Worksheet_Change(ByVal Target As Range)
il faut simplement compléter le code.
on pourrait écrire le code différemment, mais pour faire simple, et suivre facilement l'action je te conseille à tes débuts d'écrire le code par ligne
cette ligne saisie la date et l'heure en D7;D11 si tu saisis une valeur en C7:C11
If Not Intersect(Target, Range("C7:C11")) Is Nothing Then Target.Offset(0, 1) = Now
cette ligne saisie l'heure en H1:H10 lorsque tu saisis une valeur en F1:F10 (saute une colonne)
A toi d'essayer de l'adapter et éventuellement d'ajouter des lignes
exemple de code à coller dans les propriété de la feuille
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("C7:C11")) Is Nothing Then Target.Offset(0, 1) = Now
If Not Intersect(Target, Range("F1:F10")) Is Nothing Then Target.Offset(0, 2) = Time
End Sub
Bonjour,
J'ai essayé la macro ci dessus, ça fontionne super bien!!
j'ai cependant une question : dans ma macro j'ai écrit If Not Intersect(Target, Range("F1:F10")) Is Nothing Then Target.Offset(0,0) = Time
ce qui me permet de voir apparaître l'heure dans ma cellule de saisie
Mais si je souhaite effacer la saisie comment faire?
Quoique je tape l'heure s'affiche
N'y a t'il pas une macro qui permet de dire par exemple: si je clique sur suppr alors la cellule redevient vide ?
Merci de ton aide
J'ai essayé la macro ci dessus, ça fontionne super bien!!
j'ai cependant une question : dans ma macro j'ai écrit If Not Intersect(Target, Range("F1:F10")) Is Nothing Then Target.Offset(0,0) = Time
ce qui me permet de voir apparaître l'heure dans ma cellule de saisie
Mais si je souhaite effacer la saisie comment faire?
Quoique je tape l'heure s'affiche
N'y a t'il pas une macro qui permet de dire par exemple: si je clique sur suppr alors la cellule redevient vide ?
Merci de ton aide
la touche point virgule donne la date, la touche deux points donne l'heure.
Cordialement.