Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2019 ecrire en même temps dans une cellule d'une autre feuille

  • Initiateur de la discussion Initiateur de la discussion pat66
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

pat66

XLDnaute Impliqué
Bonjour Le forum,

Je souhaite saisir un chiffre (ex:15) dans la cellule A5 de la feuille1 et qu'en même temps cela écrit (ex:15) dans la cellule A5 de la feuille 2.
et que sans aller sur la feuille 2, les cellules sur la feuille 2 qui en dépendent s'actualisent automatiquement

Merci pour votre aide

pat66
 
Solution
J'ai du mal à suivre, en PJ j'ai fait :
Si Feuil2 A5=10 alors Feuil1 A5 = Feuil2 B5 sinon on ne fait rien. Avec :
VB:
Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, [A5]) Is Nothing Then
        If Target <> "" Then Sheets("Feuil1").[A5] = Sheets("Feuil2").[B5]
    End If
End Sub
Bonjour Pat,
Pas très bien compris le problème, mais si en feuille 2 cellule A5 vous mettez :
VB:
=Feuil1!A5
alors les deux cellules A5 seront toujours identiques;
Qu'est ce qui m'a échappé ?
 
Bonjour Sylvanu,

oui et non, car à la base on peut aussi saisir la cellule A5 de la feuille 1 directement.
En fait, je veux pouvoir forcer la cellule A5 de la feuille 1 en restant sur la feuille 2 et que les cellules de la feuille 2 qui dépendent de la cellule A5 tiennent compte de forçage

est ce plus clair ?
 
Dernière édition:
Re,
Pas plus, car avec =Feuil1!A5 on ne touche pas à Feuil2, il suffit de modifier la cellule A5 de la feuil1 pour mettre à jour la feuil2.

Un autre essai en PJ où toute donnée entrée en Feuil1 est recopiée à la même place en Feuil2 avec :
VB:
Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    Sheets("Feuil2").Range(Target.Address) = Target
End Sub
 
J'ai du mal à suivre, en PJ j'ai fait :
Si Feuil2 A5=10 alors Feuil1 A5 = Feuil2 B5 sinon on ne fait rien. Avec :
VB:
Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, [A5]) Is Nothing Then
        If Target <> "" Then Sheets("Feuil1").[A5] = Sheets("Feuil2").[B5]
    End If
End Sub
 

Pièces jointes

re, je crois que j'ai trouvé, qu'en pensez vous ?


Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("A5")) Is Nothing Then
Worksheets("feuil2").Range("A5").Value = Worksheets("feuil1("A5")
End If
End Sub
 
Je n'ai rien compris.
D'après vos explications, quand on met Forçage à 10 alors on copie de la feuil2 vers la feuil1 et non le contraire.
D'autre part il faut le If Target <> "" pour ne pas faire de copie si Forçage est vide.
Ce que fait ma macro.
Sinon si avec la votre tout marche, conservez la. Mais dans ce cas vos explications étaient peu claires.
 
re,

Oui votre formule fait bien le taf, mais je souhaite "voir mon post 3", que la saisie dans A5 de la feuil2" écrive la valeur dans A5 de la feuil1, c'est ce que j'appelle un forçage, merci

votre remarque est juste, voici la correction
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("A5")) Is Nothing Then
If Target <> "" then Worksheets("feuil1").Range("A5").Value = Worksheets("feuil2("A5")
End If
End Sub
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…