Microsoft 365 echange entre deux cellules

MICHAEL

XLDnaute Occasionnel
bonjour,
je souhaiterais que lorsque que j'entre une valeur en a1 celle ci s'affiche également en a2, et réciproquement.
merci de votre aide
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Michael,
Un exemple à mettre dans la feuille :
VB:
Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    Application.EnableEvents = False
    If Not Intersect(Target, [A1]) Is Nothing Then
        [A2] = Target
    ElseIf Not Intersect(Target, [A2]) Is Nothing Then
        [A1] = Target
    End If
    Application.EnableEvents = True
End Sub
 

Pièces jointes

  • Michael.xlsm
    13.1 KB · Affichages: 6

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonjour @MICHAEL,

Code dans le module de la feuille concernée:
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
   Select Case LCase(Target.Address(0, 0))
      Case "a1": Range("a1:a2") = Target
      Case "a2": Range("a1:a2") = Target
   End Select
End Sub

Que faire si on efface une cellule ? Effacer aussi l'autre ? Il faudrait le préciser ?
 

Pièces jointes

  • MICHAEL- A1 A2- v1.xlsm
    14.7 KB · Affichages: 5
Dernière édition:

Staple1600

XLDnaute Barbatruc
Bonjour le fil, Bonsoir mapomme

Plus court de plus court, c'est ;)
VB:
Private Sub Worksheet_Change(ByVal T As Range)
Select Case T.Address
Case "$A$1", "$A$2": [a1:a2] = T
End Select
End Sub
PS: Je n'avais vu que le message#4 avant de voir le message#6
(Le message#4 où je cherchais pourquoi deux Case)

NB: Par contre si on saisit une formule en A1 ou A2 , on a un "Houston"
;)
 

Discussions similaires

Réponses
11
Affichages
189
Réponses
16
Affichages
540

Statistiques des forums

Discussions
312 321
Messages
2 087 231
Membres
103 497
dernier inscrit
JP9231