Fonction SI(OU) ne répond pas

Bonjour

Dans un tableau, une cellule B2 contient cette formule : =SI(OU(ESTVIDE(A2);ESTVIDE(B2));" "=DATEDIF(A2;C2;"y"))

pour que, lorsque la cellule A2 reçoit une date, la cellule B2 affiche le temps écoulé par rapport à C2 qui contient une date fixe.

A la mise en oeuvre, la cellule B2 affiche 0 , et ce, avec ou sans donnée dans A2...

La formule est bonne...pourtant Excel indique "référence circulaire.."

...Votre avis ?

quand je veux faire une recopie incrémentée vers le bas, A, B et C sont incrémentés en même temps... Y a-t-il une astuce pour que C2 ne soit pas modifié ?

Merci

Bonjour,

Je ne suis pas très bon dans les formules ... à tout hasard ...

=SI(A2="";"";DATEDIF(A2;C2;"Y"))

ric

merci de ton aide mais ça ne change rien..

Bonjour,

Formule en B2 utilisant B2 soit son propre résultat dans le calcul, c'est une référence circulaire...

Le temps écoulé par rapport à C2, autre problème, car A2 doit être inférieur à C2.

Bonjour,

merci de ton aide mais ça ne change rien..

Entre A1 et C1, il faut que l'année soit différente, car tu as demandé "y" (year) dans la formule.

Ici, ça fonctionne.

A+

ric

ric, ...remarque exacte mais déjà prise en compte..

MFerrand, j'ai tenu compte de ta très juste remarque et j'ai modifié en conséquence en passant la formule dans C2, B2 reste vide et comme tu peux le voir, C2 indique Faux … le but recherché est, qu'à l'inscription d'une date en A2, que le délai par rapport à C1 s'inscrive dans B2 sans que l'opérateur n'ait rien d'autre à faire… ne serait-ce pas possible ?

Merci

si ou

Bonsoir jpmalb, le forum,

je te propose ce fichier Excel :

9exo-jpmalb.xlsm (14.12 Ko)

en A2, saisis 14/02/2015 ➯ en B2 : 3 (3 ans)


Alt F11 pour voir le code VBA, puis revenir sur Excel

si besoin, tu peux demander une adaptation.

merci de me dire si ça te convient.

dhany

bsr Dhany

effectivement, c'est le résultat que j'attendais….le résultat s'inscrit en B2... et en C2 aussi… toutefois, il ne se réalise que sur une seule cellule, or, ce je recherche , c'est pouvoir réaliser cette fonction sur une colonne d'une centaine de cellules, ….et peut-être plus au cas où…. d'où l'idée de faire en sorte que chaque cellule de ma colonne C puisse contenir cette fonction sans avoir à passer par VBA...

En tout cas, merci de t'être penché sur mon problème, je conserve ton exemple à toutes fins utiles

Bonne soirée

Bonjour jpmalb,

[quote="dans ton post d'hier à 17:57, tu"]le but recherché est qu'à l'inscription d'une date en A2, que le délai par rapport à C1 s'inscrive dans B2 sans que l'opérateur n'ait rien d'autre à faire[/quote]

mon 1er fichier était selon ta phrase ➯ saisie en A2 uniquement ; résultat en B2, donc en colonne B.

(j'avais laissé ta formule en C2 ; c'est pour ça que le résultat était à la fois en B2 et en C2)


nouvelle version :

7exo-jpmalb.xlsm (13.91 Ko)

saisis une date en colonne A (sur n'importe quelle ligne) ➯ résultat 1 colonne à droite, donc en colonne B.

(j'ai supprimé ta formule en C2 ; résultats uniquement en colonne B)

dhany

ajout : si tu veux les résultats en colonne C plutôt qu'en colonne B, remplace les 2 .Offset(, 1) par .Offset(, 2) ; mais dans ce cas, il faudrait ajouter du code VBA pour ignorer une saisie en A1, car sinon, ça va écraser ta date en C1 (celle avec laquelle faut faire les comparaisons !).

dans ton prochain post, mets clairement l'emplacement voulu pour les résultats : en colonne B ou en colonne C ? à partir de quelle ligne (mais pas la 1) ? à partir de 2 ? autre ? y a-t-il une ligne maxi ? par exemple pas plus que la ligne 30000 ? actuellement, y'a pas de limite donc tu peux même saisir en A1048576 ; le résultat sera en B1048576.

dhany

… confus et trés reconnaissant de te voir aussi impliqué dans "mon" problème .....jusqu'à pas d'heure…

Je vais étudier tout ça de trés près...

see you soon

Merci encore

dhany.. je reviens sur le sujet pour te dire toute ma satisfaction ...et mon étonnement à la vue de ces quelques "seules" lignes de code qui viennent solutionner le problème, et comme proposé dans ton dernier message, je te soumets une ultime et dernière modification..

- Saisie de la date en colonne E, première saisie en ligne 2

- Résultat en colonne T, ligne en regard

-Positionnement de la date de référence(dernier jour le l'année).. au choix pour toi, soit en AA1 soit en A6000, ce fichier ne dépassera jamais les 5500 lignes… c'est possible ?

Merci mille fois

autre version :

5exo-jpmalb.xlsm (14.40 Ko)

n'hésite pas à demander une adaptation si besoin.

à te lire pour avoir ton avis.

dhany

version avec date de référence en AA1 :

7exo-jpmalb.xlsm (14.39 Ko)

le même fichier en version .xls :

9exo-jpmalb.zip (9.33 Ko)

si besoin, n'hésite pas à demander une autre adaptation.

à te lire pour avoir ton avis.

dhany

ajout : je viens de répondre à ton MP.

dhany

sauf si tu as autre chose à demander, merci de passer le sujet en résolu : clique sur près de (coin haut droit du post); ça permet aussi de clôturer le fil de la discussion (toi seul peut le faire, car c'est toi qui a créé ce sujet).

dhany

Rechercher des sujets similaires à "fonction repond pas"