Partager via

Lien réciproque entre 2 cellules

Anonyme
2024-01-17T17:50:44+00:00

Bonjour,

Dans un tableur Excel, je voudrais lier le contenu de 2 cellules avec des lettres (pour un jeu) : par exemple si A1 est vide, B3 sera vide ; si je mets J dans A1, J apparaît dans B3 ; et inversement si le mets J dans B3, J apparaît dans A1.

Merci de votre aide.

Microsoft 365 et Office | Excel | Other | MacOS

Question verrouillée. Cette question a été migrée à partir de la Communauté Support Microsoft. Vous pouvez voter pour indiquer si elle est utile, mais vous ne pouvez pas ajouter de commentaires ou de réponses ni suivre la question.

0 commentaires Aucun commentaire

Réponse acceptée par l’auteur de la question

Anonyme
2024-01-18T15:11:50+00:00

Il faut les regrouper dans une seule procédure, donc plutôt :

Private Sub Worksheet_Change(ByVal Target As Range)

If [A1] = [B3] Then End

If [C3] = [F7] Then End

If Target.Address = "$A$1" Then [B3] = [A1]

If Target.Address = "$B$3" Then [A1] = [B3]

If Target.Address = "$F$7" Then [C3] = [F7]

If Target.Address = "$C$3" Then [F7] = [C3]

End Sub

Cette réponse a-t-elle été utile ?

1 personne a trouvé cette réponse utile.
0 commentaires Aucun commentaire

7 réponses supplémentaires

  1. Anonyme
    2024-01-17T19:36:00+00:00

    J'ai suivi les instructions avec les cellules Q2 et AQ26 (dans la question j'avais pris A1 et B3 pour simplifier).

    Voici ce qui me revient :

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire
  2. Anonyme
    2024-01-17T18:40:32+00:00

    Disons qu'a priori ce n'est pas trop compliqué tout de même. En fait, ça va un peu dépendre de la vraie situation attendue. Mais bon, on va partir de ton exemple :

    Sur l'onglet de la feuille concernée, en bas, tu fais un clic droit et tu demandes à "Afficher le code". Cela t'ouvre une fenêtre dans l'éditeur Visual Basic. Dans cette fenêtre, vide, tu colles les lignes suivantes :

    Private Sub Worksheet_Change(ByVal Target As Range)

    If [A1] = [B3] Then End

    If Target.Address = "$A$1" Then [B3] = [A1]

    If Target.Address = "$B$3" Then [A1] = [B3]

    End Sub

    Par le menu "Excel" tu demandes à "Fermer et retourner à Excel" puis tu demandes à "Enregistrer sous..." au format .xlsm (pour que la macro soit conservée dans le classeur).

    En principe, c'est tout...

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire
  3. Anonyme
    2024-01-17T18:32:11+00:00

    Bonsoir Aliboron,

    Merci pour cette réponse rapide.

    Ma version EXCEL : 16.66.1

    macOS : 10.15.7

    Quant au travail avec les macros et la programmation en VBA, je n'y connais rien... Si tu penses que c'est trop compliqué, je pourrai peut-être m'en tirer manuellement cellule par cellule.

    Merci.

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire
  4. Anonyme
    2024-01-17T18:10:06+00:00

    Ce type d'interaction n'est pas possible avec des formules. C'est envisageable par macro, est-ce que tu te sens de te lancer dans la programmation en VBA ?

    Quelle est ta version d'Excel ? Sur quelle version de macOS ? Cela peut éventuellement avoir son intérêt...

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire