referance circulaire

L

linux

Guest
je veux faire une somme de A1 et A2..et a chaque fois le resultat sera dans A2....
mais je ne peux pas vous proposer une solution SVP. merci
 

Gael

XLDnaute Barbatruc
Bonjour Linux,

N'oublie pas de lire la charte du forum pour les prochaines questions.

Tu ne peux pas définir une formule de calcul qui fait référence à son propre résultat. Cela crée une référence circulaire.

dans ton exemple, A2 avec la formule =A1+A2, ne peut pas fonctionner, Il faut utiliser une 3ème cellule pour faire la somme des 2 autres.

Dans A3 '=A1+A2'.

@+

Gael
 
L

Linux

Guest
Merci pour votre réponse, mais le problem est que je veux a cahque fois aditioner l'encienne val au nouvelle, ex:
1ere fois:
A1: 12
A2:12

2eme fois:
A1: 22
A2: somme(A1;A2)= 34

...

mais je ne peux pas a cause de la referance circulaire..est ce que vous avez une solution.
Merci.
 

JeanMarie

XLDnaute Barbatruc
Re:référence circulaire

Bonsoir

Tu peux le faire, va dans les préférences (Mac) ou les options d'Excel (PC), dans la boîte de dialogue, clique sur l'onglet Calcul, puis coche l'option 'Itération' et indique la valeur 1 au champ 'Nombre maximal d'itérations'.
Dans ton cas la valeur 1 est très importante.

Bonne soirée

@+Jean-Marie

Message édité par: JeanMarie, à: 13/07/2005 21:59
 

JeanMarie

XLDnaute Barbatruc
Re

J'ai une question/réponse à te demander.
Comment vas-tu faire pour mettre la cellule A2 à zéro ?

Tu as trois solutions :

- pas en mode saisie de formule dans la cellule A2, pas génial
- taper la valeur négative de la cellule A2, chiant
- modifier la formule A2

Par exemple, en tapant un code dans la cellule A1, exempe par RAZ
la formule sera =SI(A1='RAZ';0;A1+A2)

@+Jean-Marie
 

michel_m

XLDnaute Accro
Bonjour Sylvie, André, Jean Marie, Gaël, Gilles, Linux

C'est normal car chaque fois que tu ouvres le classeur, Excel lance les calculs demandés par des formules; pour éviter cela il faudrait que tu tapes Zéro dans A2, technique peu pratique

Le pb peut être résolu par une petite macro du dimanche à incorporer dans le module 'feuil1' de VBE (accès par alt+F11) j'ai joint une démo en PJ

La macro pourrait être celle-ci:

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range('A2')) Is Nothing Then Exit Sub
Range('A1') = Range('A1') + Range('A2')
End Sub

Bon Dimanche
Michel
[file name=ite.zip size=6152]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/ite.zip[/file]
 
Dernière édition:

andré

XLDnaute Barbatruc
Salut tout le monde,

Merci Sylvie de m'avoir rafraichi la mémoire.

Sais-tu qu'en 2002 on a dépensé trois fois plus pour les protèses en silicone et le viagra que pour la recherche de la maladie d'Alhzeimer ?
D'ici quelques temps toutes les grand'mères auront encore un physqiue de jeune première et tous les grand'pères seront toujours en pleine fome, ... mais ils ne se souviendront plus pourquoi !

Ândré.
 

JeanMarie

XLDnaute Barbatruc
Bonsoir tout le monde

Pour continuer sur l'itération, je te propose cette solution, formule à mettre en B1.
=SI(CELLULE('address')=CELLULE('address';A1);SI(A1='RAZ';0;A1+B1);B1)

Un autre principe serait d'utiliser le sens de calcul des feuilles (de haut en bas, et de gauche à droite), pour mémoriser le contenu des deux cellules, pour détecter un changement de valeur, mais cela devient vite une usine à gaz.

@+Jean-Marie
 

Discussions similaires

Statistiques des forums

Discussions
312 696
Messages
2 091 056
Membres
104 749
dernier inscrit
Boussou