Saisie de date automatique
Résolu
Mistral_13200
Messages postés
649
Statut
Membre
-
Mike-31 Messages postés 19572 Date d'inscription Statut Contributeur Dernière intervention -
Mike-31 Messages postés 19572 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour à tous,
Je bute sur un problème de date et je sollicite votre aide.
Sur une feuille je voudrais que la date du jour soit automatiquement affichée dans la cellule « A1 » lorsque les trois cellules situées à sa droite (B1, C1 et D1) ne sont plus vides, et surtout conserver cette date.
Si je rentre la fonction suivante en A1 j’obtiens ce que je veux, ou presque…
=SI(ET(B1<>"";C1<>"";D1<>"");AUJOURDHUI();"")
En effet si je ferme mon classeur et que je l’ouvre le lendemain par exemple A1 prends la date du jour alors que je voudrais conserver la date de saisie.
Merci d’avance pour votre aide.
Cordialement.
Mistral
Je bute sur un problème de date et je sollicite votre aide.
Sur une feuille je voudrais que la date du jour soit automatiquement affichée dans la cellule « A1 » lorsque les trois cellules situées à sa droite (B1, C1 et D1) ne sont plus vides, et surtout conserver cette date.
Si je rentre la fonction suivante en A1 j’obtiens ce que je veux, ou presque…
=SI(ET(B1<>"";C1<>"";D1<>"");AUJOURDHUI();"")
En effet si je ferme mon classeur et que je l’ouvre le lendemain par exemple A1 prends la date du jour alors que je voudrais conserver la date de saisie.
Merci d’avance pour votre aide.
Cordialement.
Mistral
A voir également:
- Saisie de date automatique
- Logiciel de sauvegarde automatique gratuit - Guide
- Réponse automatique thunderbird - Guide
- Liste deroulante excel avec saisie semi-automatique - Guide
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Saisie automatique - Guide
7 réponses
Bonjour
Il existe la fonction NOW (en anglais) à mettre à la place de AUJOURD'HUI qui je suppose veux dire MAINTENANT en français, normalement je pense qu'elle ne se modifie que si tu modifies une de tes trois cellules?
Il existe la fonction NOW (en anglais) à mettre à la place de AUJOURD'HUI qui je suppose veux dire MAINTENANT en français, normalement je pense qu'elle ne se modifie que si tu modifies une de tes trois cellules?
Re bonjour
Est-ce que tu penses que si ta formule est transformée en texte elle ne changera pas
Exemple =TEXTE(SI(ET(B14<>"";C14<>"";D14<>"");MAINTENANT();"");"dd mm yy")
Est-ce que tu penses que si ta formule est transformée en texte elle ne changera pas
Exemple =TEXTE(SI(ET(B14<>"";C14<>"";D14<>"");MAINTENANT();"");"dd mm yy")
Bonjour,
Si tu passes par une formule la date sera obligatoirement mise à jour.
Utilises le raccourci clavier Ctrl+;
Utilises éventuellement une mise en forme conditionnelle pour faire apparaitre les cellules pouvant recevoir la date.
Sinon c'est en vba
eric
Si tu passes par une formule la date sera obligatoirement mise à jour.
Utilises le raccourci clavier Ctrl+;
Utilises éventuellement une mise en forme conditionnelle pour faire apparaitre les cellules pouvant recevoir la date.
Sinon c'est en vba
eric
Salut,
Malheureusement avec une formule, date s’actualisera à chaque ouverture du fichier que ce soit avec AUJOURDHUI ou MAINTENANT et même si on inclut la fonction TEXTE.
Il faudrait le traiter en VBA, mais combien de cellule à traiter, cela en vaut t il le coup
A+
Malheureusement avec une formule, date s’actualisera à chaque ouverture du fichier que ce soit avec AUJOURDHUI ou MAINTENANT et même si on inclut la fonction TEXTE.
Il faudrait le traiter en VBA, mais combien de cellule à traiter, cela en vaut t il le coup
A+
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Salut,
En gardant ton exemple pose en colonne A1 cette formule qui saisiera Date lorsque les trois conditions sont réunis et incrémente la formule jusqu'en bas de ton tableau.
Il est impératif de mettre FIN en majuscule en fin de colonne A pour aréter la macro
=SI(ET(B1<>"";C1<>"";D1<>"");"Date";"")
ensuite clic droit sur l'onglet de feuille pour ouvrir le VBA, et insertion/module.
Dans ce module colle le code ci dessous et affecte le à un bouton. Tu peux créer un bouton par feuille pour le même code
Sub test2()
Range("A1").Select
Do While ActiveCell.Value <> "FIN"
ActiveCell.Offset(1, 0).Select
If ActiveCell = 1 Then
ActiveCell = Date
End If
Loop
End Sub
chaque fois que la macro recontrera Date dans la colonne A, Date sera remplacé par la date.
Si nous avions un exemple de ton fichier il serait possible d'écrire le code différemment, comme faire partir le code en bas de ta structure et l'arréter sur l'en tête de ta colonne.
si tu le souhaites tu peux joindre un exemple de fichier sans note confidentielle et réduit avec ce lien
https://www.cjoint.com/
A+
En gardant ton exemple pose en colonne A1 cette formule qui saisiera Date lorsque les trois conditions sont réunis et incrémente la formule jusqu'en bas de ton tableau.
Il est impératif de mettre FIN en majuscule en fin de colonne A pour aréter la macro
=SI(ET(B1<>"";C1<>"";D1<>"");"Date";"")
ensuite clic droit sur l'onglet de feuille pour ouvrir le VBA, et insertion/module.
Dans ce module colle le code ci dessous et affecte le à un bouton. Tu peux créer un bouton par feuille pour le même code
Sub test2()
Range("A1").Select
Do While ActiveCell.Value <> "FIN"
ActiveCell.Offset(1, 0).Select
If ActiveCell = 1 Then
ActiveCell = Date
End If
Loop
End Sub
chaque fois que la macro recontrera Date dans la colonne A, Date sera remplacé par la date.
Si nous avions un exemple de ton fichier il serait possible d'écrire le code différemment, comme faire partir le code en bas de ta structure et l'arréter sur l'en tête de ta colonne.
si tu le souhaites tu peux joindre un exemple de fichier sans note confidentielle et réduit avec ce lien
https://www.cjoint.com/
A+
Bonjour,
Merci d'avoir consacré du temps à mon probleme d'autant plus que j'ai trouvé, avec l'aide d'un ami,
une autre solution. On a pu travailler directement sur mon fichier ce qui nous a permis de la caller
exactement là ou j'en avais besoin.
Je te la donne a titre informatif.
Dès qu'une valeur est saisie la date est affichée en claire.
On efface la valeur la date disparait.
Private Sub Worksheet_Change(ByVal sel As Range)
If sel.Column = 15 And sel.Count = 1 Then
If sel.Value <> "" And Not IsNumeric(sel.Value) Then
sel.Offset(0, -1).Value = Date
Else
sel.Offset(0, -1).Value = ""
End If
End If
End Sub
Encore une fois un grand merci à toi.
Cordialement.
Mistral
Merci d'avoir consacré du temps à mon probleme d'autant plus que j'ai trouvé, avec l'aide d'un ami,
une autre solution. On a pu travailler directement sur mon fichier ce qui nous a permis de la caller
exactement là ou j'en avais besoin.
Je te la donne a titre informatif.
Dès qu'une valeur est saisie la date est affichée en claire.
On efface la valeur la date disparait.
Private Sub Worksheet_Change(ByVal sel As Range)
If sel.Column = 15 And sel.Count = 1 Then
If sel.Value <> "" And Not IsNumeric(sel.Value) Then
sel.Offset(0, -1).Value = Date
Else
sel.Offset(0, -1).Value = ""
End If
End If
End Sub
Encore une fois un grand merci à toi.
Cordialement.
Mistral
Je pense que le problème peut ^tre résolu de manière beaucoup plus simple
si tu as un clavier "Français, Be" pas UK donc AZERTY, tu pousse sur la touche " ctrl et : ", tu devrait voir apparaître
la date du jour celle qui est sur ton ordi, normalement demain, ni les jours suivants elle ne devrait pas changer
la combinaison "ctrl et ;" donne l'heure actuelle du PC.
Pour la petite histoire, si tu pose ton curseur sur une cellule sous une valeur quelconque (même par exemple sous la cellule A1, en A2) tu recopie la valeur de la cellule par la combinaison "ctrl et$" c'est très utile dans le cas ou tu as une formule et que tu veux juste la valeur, cela évite la recherche (copier, edition, collage spécial, valeur ...)
A+
si tu as un clavier "Français, Be" pas UK donc AZERTY, tu pousse sur la touche " ctrl et : ", tu devrait voir apparaître
la date du jour celle qui est sur ton ordi, normalement demain, ni les jours suivants elle ne devrait pas changer
la combinaison "ctrl et ;" donne l'heure actuelle du PC.
Pour la petite histoire, si tu pose ton curseur sur une cellule sous une valeur quelconque (même par exemple sous la cellule A1, en A2) tu recopie la valeur de la cellule par la combinaison "ctrl et$" c'est très utile dans le cas ou tu as une formule et que tu veux juste la valeur, cela évite la recherche (copier, edition, collage spécial, valeur ...)
A+
Merci pour ta réponse, mais ça ne marche pas.
La date est aussi modifiée avec "Maintenant".
Je viens de faire un essais en changeant la date de l'ordi et
dans les deux cas la date est modifiée.
Si tu as une autre piste...
Encore merci d'avoir répondu.
Mistral