insérer automatiquement la date avec une formule

W

Willy

Guest
Bonsoir à toutes et à tous,
Je souhaiterai savoir si il est possible avec une formule d'insérer automatiquement la date du jour par exemple dans la cellule B2 dès qu'une saisie est effectuée dans la cellule A2, en clair la date serai insérer quand la cellule A2 est <>"" ?
Merci pour votre aide
Bonne soirée
Willy
 
M

Monique

Guest
Bonsoir,

=SI(A2<>"";AUJOURDHUI();"")
=SI(ESTVIDE(A2);"";AUJOURDHUI())
et mettre la cellule au format date.

Mais ça dépend peut-être de ce qui doit entre en A2.
=SI(ESTTEXTE(A2);AUJOURDHUI();"") ou autre chose

Ou bien un format conditionnel : police de même couleur que le fond si A2 est vide.
 
W

Willy

Guest
Bonsoir Monique,
Merci pour ton aide.
En fait la colonne A doit contenir des noms de produits pharmaceutique. mon idée donc est dès qu'une cellule de la colonne A n'est plus vierge (donc je suppose qu'elle contienne le nom du produit ), la cellule B de la ligne correspondante affiche la date du jour automatiquement.
Les cellules de la colonne A sont au format Texte.

Merci encore, j'ai de quoi trouver mon bonheur avec tes formules.
Bonne soirée
Willy
 
W

Willy

Guest
Bonjour Monique, Bonjour à tous,

Je rencontre un nouveau problème avec la formule suivante :
=SI(A2<>"";MAINTENANT();"")
Cela fonctionne parfaitement sauf que les cellules sont remises à jours soit lors de l'ouverture du classeur.

En fait je souhaiterai après avoir saisie par exemple la cellule A2 que la date et l'heure de la modif soit écrite dans la cellule B2.
mais que cela ne soit plus changé jusqu'à la prochaine modification de la cellule A2.
Car avec cette formule quand je saisie par exemple la cellule A15 la cellule B15 est bien mis à jour mais également toutes les cellules de la colonne B contenant la formule.
En clair j'ai besoin de geler la date et l'heure jusqu'à la prochaine modification de la cellule de la colonne A correspondante.
Merci de votre aide
Willy
 
M

Monique

Guest
Re bonjour,

Il y a déjà eu des posts à ce sujet dans le forum.
C'est faisable par macro (je crois).
Je ne sais pas faire (je suis sûre).
Tu devrais faire une recherche sur le forum, en utilisant le mot figé ou figer ou figée.
 
W

Willy

Guest
Bonsoir Monique,
j'ai trouvé des posts concernant ce problème.
Effectivement cela n'est pas simple et il faut utiliser vba.
Ti propose une macro pour gérer cela.
Pour une fois ou je voulais un fichier sans aucune macro !!!
Merci à toi et bonne soirée
Willy
 
J

Jean-Marie

Guest
Bonsoir, tout le monde.

Pas besoin de VBA, cette fonction devrait fonctionner, [g]en modifiant une des options de calcul d'Excel. Cocher l'itération, et fixer la valeur de cette itération à 1[/g].

Je mets dans la cellule B2 cette fonction

=SI(A2<>"";SI(NBCAR(B2)>1;B2;MAINTENANT());"")

@+Jean-Marie
 
A

andré

Guest
Salut Jean-Marie,

Pourrais-tu vérifier ta formule, car chez moi, même après avoir mis la cellule B2 en format date, le résultat est toujours 00 janv 00.

De plus, le nombre d'itérations (=1) s'applique à toute la feuille, alors que j'ai d'autres petites macros sur la même feuille avec la fonction Valeur Cible, qui elle nécessite une itération à 100.

As-tu une idée comment je pourrais faire ?

André.
 
J

Jean-Marie

Guest
Bonjour André,

Sa marche aussi avec une itération à 100.

Dans cette exemple, tu dois placer =SI(A2<>"";SI(NBCAR(B2)>1;B2;MAINTENANT());""),
cette fonction en B2, et taper du texte en A2.

@+Jean-Marie
 
A

andré

Guest
Resalut Jean-Marie,

Tu as raison, ça marche, j'avais simplement oublié de cocher la case à gauche d'Itération sous Outils / Options / Calcul.

Je te remercie pour cette astuce, car elle me simplifie grandement la vie.
Dans une bibliothèque de prix, je place la date de la dernière modification de prix (si je n'oublie pas de la faire !), et par une mise en forme conditionnelle (couleur de fond), je m'attire l'attention sur les prix plus anciens que trois mois.
Maintenant tout ce fait automatiquement, sans possibilté d'erreur.

André.
 
W

Willy

Guest
Bonjour à tous,
Désolé pour ce petit retard
Merci beaucoup Jean Marie pour la formule.
Cela fonctionne impect.
Juste une précision concernant l'itération :
Ne connaissant pas cette fonction proposé dans l'option de calcul d'Excel et réglé par défaut à 100, quelle incidence cela peut avoir de la mettre sur 1.
Merci encore et bravo
Willy
 
J

Jean-Marie

Guest
Bonsoir, tout le monde

Je pense qu'excel fait une boucle suivant le nombre de la valeur de l'itération, pour trouver la valeur. Donc à plus la valeur de l'itération est importante, à plus le calcul sera long.

@+Jean-Marie
 
A

andré

Guest
Salut Jean-Marie,

J'ai encore un petit problème que je ne parviens pas à résoudre.
Si tu pouvais m'aider, ce serait gentil.

Pour tester ta formule, j'ai modifié la fonction AUJOURDHUI() par une référence à la cellule C2.
Si je tape une valeur quelconque en C2 et A2, B2 reprend bien la valeur de C2.
Si je modifie la valeur de C2, puis de A2, en l'écrasant, B2 ne reprend pas la valeur de C2.
Par contre, si je vide d'abord A2 (Delete / Enter), puis que je tape une valeur en A2, B2 reprend bien la valeur de C2.

Vois-tu une solution ?
Si j'étais seul à travailler sur mon programme, pas de problème car je connais la procédure, ... mais les autres !

André.
 
A

andré

Guest
Resalut Jean-Marie,

Je viens de tester "in situ" dans mon programme et c'est un peu plus compliqué que prévu à l'origine.
La cellule de référence contient une formule, donc pas question d'effacer la valeur avnat de la remplacer par une autre.

André.
 

Pièces jointes

  • date_du_jour.xls
    14 KB · Affichages: 170
  • date_du_jour.xls
    14 KB · Affichages: 191
  • date_du_jour.xls
    14 KB · Affichages: 191

Discussions similaires

Réponses
11
Affichages
362
Réponses
4
Affichages
267

Statistiques des forums

Discussions
314 645
Messages
2 111 536
Membres
111 182
dernier inscrit
savio