Cellules liées entre elles type va et vient

Bonjour

j aimerai lier des cellules entre elles

c est a dire lorsque l on change la valeur dans une cellule celle ci change également dans l autre cellule et vice versa

Ainsi dans le fichier que j ai posté j ai lié en feuille 1 la cellule A3 et E3 et en feuille 2 la cellule B2

j ai également lié en feuille 1 la cellule I2 avec en feuille 2 les cellules C7 et D5 et aussi en feuille 3 les cellules D11 , F6, et H2

Dans mon fichier il y a un code qui marche plutôt bien

j aimerai cependant que vous jetiez un coup d œil au code pour voir s il n y a pas moyen de faire plus simple

Je vous remercie d avance pour votre aide

43classeur1.xlsm (17.00 Ko)

Bonjour,

Vois la simplification du code dans le fichier en retour. Dis-nous si ça te va.

c est parfait merci beaucoup good job

bonsoir

je suis desolée j ai du enlever le commentaire resolu du sujet

j ai toujours un probleme avec ce code j ai l impression qu il tourne en boucle et c est sans doute pour ca que ca ne marche pas

je vous ai posté un nouveau fichier avec le code que j ai adapté

vous verrez que lorsque vous changez la valeur en A3 de la feuille 1 la valeur s inscrit bien en B2 de la feuille 2 mais cela genere une erreur

pouvez vous regarder svp ce qui ne va pas?

28classeur1012.xlsm (13.97 Ko)

Bonjour,

oui, c'est une boucle sans fin.

Il faut que tu désactives les événements avant d'écrire dans l'autre cellule, sinon elle déclenchera un événement qui déclenchera un événement qui déclenchera un événement qui déclenchera un événement qui déclenchera un événement qui déclenchera un événement qui déclenchera un événement qui déclenchera un événement qui déclenchera un événement qui déclenchera un événement qui déclenchera un événement qui déclenchera un événement qui déclenchera un événement qui déclenchera un événement qui déclenchera un événement qui déclenchera un événement qui...........

application.enabledevents=false

remettre à true immédiatement après.

eric

Ok je m en doutais un peu.

Par contre je comprends pas tout

C est ou qu il faut que jedesactive les evenements

Vous pouvez m expliquer pas a pas ce qu il faut faire svp

Re,

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$A$3" Then
        Application.EnableEvents = False
        Sheets("Feuil2").Range("B2") = Target
        Application.EnableEvents = True
    End If
 End Sub

idem pour l'autre

eric

Bonjour désolé je n'ai pas pu répondre avant j étais un peu occupée

Merci beaucoup ça marche nickel

Toutefois j aimerais un dernier coup de main svp

J aimerai que la valeur insérer en A3 feuille 1 soit multiplié par 1000 et qu on lui ôte 400se retrouve toujours en B2 de la feuille 2

Ex: on insère 50en A3 et on obtient 49600 en B2 feuille 2

De la MM manière lorsque l on insère une valeur en b2 feuille 2 , le résultat obtenu en a3 feuille 1 est cette valeur augmentée de 400 et divisé par 1000

Ex: on insère 49600 en b2 feuille 2et on obtient 50 en a3 feuille 1

Est ce possible?

Bonjour,

Non testé, fait e direct :

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$A$3" Then
        Application.EnableEvents = False
        Sheets("Feuil2").Range("B2") = Target*1000-400
        Application.EnableEvents = True
    End If
 End Sub

= (Target+400)*1000 pour l'autre.

Au fil du temps tu risques d'avoir des cumuls de petites erreurs qui vont devenir visibles.

Il faudrait que tu ajoutes un arrondi qui dépend du nombre de décimales que tu veux garder en précision.

Par exemple =round(Target*1000-400,9)

eric

bonjour

j ai testé ca marche super bien

j ai pas bien compris pourquoi il y aurait des erreurs plus tard

en tout cas merci

Bonjour,

j ai pas bien compris pourquoi il y aurait des erreurs plus tard

Quand excel calcule il converti en binaire et ça ne tombe pas toujours juste, parfois il perd le dernier bit.

Et au bout d'un moment il peut afficher 0.999999999999999 au lieu de 1 par exemple, d'ou l’intérêt d'arrondir.

Super l explication

Rechercher des sujets similaires à "liees entre type vient"