probleme de date

Z

zouille

Guest
salut forum

Voila, dans mon projet de devis , j'ai un petit probleme.
A la création du devis, j'ai une cellule ou j'ai une fonction date (=AUJOURDHUI()) mais le probleme vient du fait que quand je re-ouvre ce devis par la suite , la date change ( normal...)

J'aimerais donc que la date reste celle de la création du devis , comment faire SVP ?


merci a vous
 

Gérard DEZAMIS

XLDnaute Accro
Bonjour Zouille et Océane

Dans ton fichier Modèle devis
tu places ta formule =aujourdhui()
histoire de vbien vérifier que c'est la date du jour ....
et dans le VBE (avec Alt + F11) tu places

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Range('A1').Select
Selection.Copy
Selection.PasteSpecial Paste:=xlValues
End Sub
dans Thisworkbook ainsi à la fermeture du fichier la date sera 'figée'

@+
 

andré

XLDnaute Barbatruc
Bonjour zouille, Océane et gérard,

Le plus simple est de taper Ctrl+; (tenir la touche clavier Ctrl enfoncée et taper un point virgule).

En pièce jointe une solution par formule.

Bonne journée.
Â+ [file name=date_figee_20051228082419.zip size=1934]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/date_figee_20051228082419.zip[/file]
 

Océane

XLDnaute Impliqué
Magique ta solution André et effectivement la plus simple:(Ctrl+;).

Je ne connaissais pas cette option d'itération, du reste je comprends pas bien comment ça marche ?
Si tu as le temps de m'expliquer André ...

La macro c'est bon aussi, mais si je ne me trompe pas elle interdit tout autre opération à l'ouverture du fichier(le workbook ne peut prendre qu'une instruction de ce genre....A moins que je dise une bétise le vba c'est pas encore mon truc.
André et Gérard si vous pouvez me corriger ... merci

A+
 

andré

XLDnaute Barbatruc
Salut Océane,

Mais je n'ai pas à te corriger, pour ma part bien entendu.

Puisque tu ne connaissais pas le Ctrl+;, je te signale que le Ctrl+: renvoie l'heure.

Quant à l'itération :
La formule fait référence à elle-même, donc elle crée une boucle sans fin et Excel le signale par 'Référence circulaire'.
Le fait de mettre l'itération à 1 signale à Excel qu'il ne doit calculer la formule qu'une seule fois, puis d'accepter le résultat tel qu'il est.
Le seul petit problème de cette procédure est que cette mise en 1 est valable pour toute la feuille et que, par conséquent, d'éventuelles autres références circulaires ne seront plus signalées.

Â+
 

JeanMarie

XLDnaute Barbatruc
Bonjour

Dans l'exemple du fichier, il faut que la formule de la cellule A1 soit saisie avant la valeur de la cellule B2.

Cette formule corrige ce p'tit problème
=SI(B1='';'';SI(OU(A1=0;NBCAR(A1)=0);AUJOURDHUI();A1))

Autre info, concernant le nombre maximal d'itérations, dans l'exemple fourni, il est inutile de modifier cette option. Lvaleur de la cellule étant la même pour l'itération1 et l'itération2, l'option 'écart maximal' arrêtant le calcul de la feuille.

Voilà pour les corrections du fichier jeune Anakin ;)

Océane concernant, l'option d'itération. Elle permet de supprimer le message d'erreur de 'référence circulaire', une cellule ne pouvant utiliser son propre résultat. Elle modifie aussi le sens de calcul de la feuille, avec cette option, celui-ci commence à la cellule A1 puis ce dirige vers la droite, puis passe à la ligne suivante en repartant à la colonne A vers la colonne IV, et ainsi de suitte.

Tu peux retrouver un exemple de calcul d'une feuille avec cette option, sur ce Lien supprimé, il y a aussi 38 fils qui parlent d'itération, tu peux les retrouver en faisant une recherche.

@+Jean-Marie

PS: Anakin ce transformera en Dark Vador par la consommation excessive de boisson belge. La force est avec toi.
:)

Message édité par: JeanMarie, à: 31/12/2005 09:19
 

Statistiques des forums

Discussions
312 493
Messages
2 088 955
Membres
103 989
dernier inscrit
jralonso