écrire réciproque dans 2 cellules

Fermé
Chrisnavig Messages postés 4 Date d'inscription jeudi 29 mars 2018 Statut Membre Dernière intervention 4 avril 2018 - 29 mars 2018 à 16:01
Chrisnavig Messages postés 4 Date d'inscription jeudi 29 mars 2018 Statut Membre Dernière intervention 4 avril 2018 - 4 avril 2018 à 15:46
Bonjour,
Sur Excel 2016 est-il possible d'écrire indifféremment dans une cellule d'une feuille (cellule F1 feuil1 par ex), que cela écrive également dans la cellule A1 de la feuil2 et lorsque l'on écrit dans la cellule A1 de la feuil2 que ça écrive dans la cellule F1 de la feuil1?
Par avance je vous remercie

A voir également:

2 réponses

via55 Messages postés 14402 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 18 avril 2024 2 702
Modifié le 29 mars 2018 à 23:00
Bonjour

Possible avec macros
Par exemple :
ALT+F11 pour ouvrir editeur VBA
Insertion puis Module
Dans la page du module copier coller l'instruction suivante pour déclarer la variable
Public trans As Integer


Cette variable va servir dans les macros à éviter que celles-ci fonctionnent en boucle sans fin, l'instruction ne s’exécutant que si trans=0

Ensuite double-clic sur Feuil1 dans l'arborescence à gauche puis copier -coller dans la page la macro suivante :
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("F1")) Is Nothing And trans = 0 Then trans = 1: Sheets("Feuil2").Range("A1") = Target.Value: trans = 0
End Sub


Enfin double-clic sur Feuil2 dans l'arborescence puis copier-coller la macro :
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1")) Is Nothing And trans = 0 Then trans = 1: Sheets("Feuil1").Range("F1") = Target.Value: trans = 0
End Sub


Modifier les noms des cellules et des feuilles dans les macro si nécessaire

Cdlmnt
Via
0
Chrisnavig Messages postés 4 Date d'inscription jeudi 29 mars 2018 Statut Membre Dernière intervention 4 avril 2018
30 mars 2018 à 16:11
Bonjour,
J'ai testé cette solution cela fonctionne bien pour pour un nombre restreint de cellules. Lorsque j'ai rentré tous les arguments pour mon tableau cela m'a indiqué "procédure trop grande".
Mon tableau fait 72 ligne mais 1 ligne sur 2 est concernée et il y a 20 colonnes.
Les 10 dernières colonnes de la 1ère feuille doivent correspondre au 10 premières colonnes de la 2ème feuille,
les 10 dernières colonnes de la 2ème feuille doivent correspondre au 10 premières colonnes de la 3ème feuille et ainsi de suite.
Est ce possible?
Par avance je vous remercie
0
via55 Messages postés 14402 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 18 avril 2024 2 702
30 mars 2018 à 16:44
Re

Essaie cette macro, à mettre dans le worksheet de chaque feuille
Private Sub Worksheet_Change(ByVal Target As Range)
If ActiveSheet.Index < Sheets.Count Then
If Not Intersect(Target, Range("K1:T80")) Is Nothing And trans = 0 Then trans = 1: Sheets(ActiveSheet.Index + 1).Cells(Target.Row, Target.Column - 10) = Target.Value: trans = 0
End If

If ActiveSheet.Index > 1 Then
If Not Intersect(Target, Range("A1:J80")) Is Nothing And trans = 0 Then trans = 1: Sheets(ActiveSheet.Index - 1).Cells(Target.Row, Target.Column + 10) = Target.Value: trans = 0
End If
End Sub

Plages à adapter si nécessaire

Avec toujours la déclaration
Public trans As Integer
dans un module

Cdlmnt
Via

0
Chrisnavig Messages postés 4 Date d'inscription jeudi 29 mars 2018 Statut Membre Dernière intervention 4 avril 2018
30 mars 2018 à 17:03
Merci pour la réponse rapide, j'essaie tout ça dès mardi matin et je te tiens au courant.
Bon weekend
0
Chrisnavig Messages postés 4 Date d'inscription jeudi 29 mars 2018 Statut Membre Dernière intervention 4 avril 2018
4 avril 2018 à 15:46
Bonjour,
ça fonctionne bien, c'est un peu lent mais je pense que cela est dû à notre réseau.
Merci encore.
Chrisnavig
0