Faire une synchro' d'une cellule suivant une valeur précise
3 réponses
nyko
Bonjour,
Logiciel : Excel 2000 (vers 9.0.3821 SR1)
Windows XP SP2
Je d=E9sire faire une macro qui me permetterait de faire une synchro
entre deux feuilles, si une valeur se trouve identique dans la colonne
A dans les deux feuilles, alors copier la valeur de la colonne B (de
la m=EAme ligne de la valeur identique) de la feuille 1 =E0 la feuille 2.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Hervé
Bonsoir Nyko, A mettre dans le module de la feuille où sont effectués les modifications, les commentaires sont dans le code pour mieux le comprendre :
Private Sub Worksheet_Change(ByVal Target As Range) Dim Fe As Worksheet 'la feuille où doivent être copiées les valeur 's'appelle, ici, "Feuil2", à adapter Set Fe = Worksheets("Feuil2") 'si la cellule subissant la modif est en colonne A 'et que seulement une seule cellule est concernée If Not Intersect(Target, Columns("A")) Is Nothing _ And Target.Count = 1 Then 'compare les valeurs d'une feuille à l'autre et 'd'une cellule à l'autre, si elles sont identiques 'colle la valeur de la cellule en colonne B dans 'la cellule (en colonne B) correspondante If Target.Value = Fe.Range(Target.Address) Then Fe.Range(Target.Address).Offset(0, 1) = Target.Offset(0, 1) Else 'si la cellule doit être vidée de sont contenu 'quand la valeur devient différente 'enlever l'apostrophe devant la ligne qui suis 'Fe.Range(Target.Address).Offset(0, 1) = "" End If End If Set Fe = Nothing End Sub
Hervé.
"nyko" a écrit dans le message de news:
Bonjour,
Logiciel : Excel 2000 (vers 9.0.3821 SR1) Windows XP SP2
Je désire faire une macro qui me permetterait de faire une synchro entre deux feuilles, si une valeur se trouve identique dans la colonne A dans les deux feuilles, alors copier la valeur de la colonne B (de la même ligne de la valeur identique) de la feuille 1 à la feuille 2.
Merci d'avance pour votre aide.
Cordialement,
Nicolas.
Bonsoir Nyko,
A mettre dans le module de la feuille où sont effectués les modifications,
les commentaires sont dans le code pour mieux le comprendre :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Fe As Worksheet
'la feuille où doivent être copiées les valeur
's'appelle, ici, "Feuil2", à adapter
Set Fe = Worksheets("Feuil2")
'si la cellule subissant la modif est en colonne A
'et que seulement une seule cellule est concernée
If Not Intersect(Target, Columns("A")) Is Nothing _
And Target.Count = 1 Then
'compare les valeurs d'une feuille à l'autre et
'd'une cellule à l'autre, si elles sont identiques
'colle la valeur de la cellule en colonne B dans
'la cellule (en colonne B) correspondante
If Target.Value = Fe.Range(Target.Address) Then
Fe.Range(Target.Address).Offset(0, 1) = Target.Offset(0, 1)
Else
'si la cellule doit être vidée de sont contenu
'quand la valeur devient différente
'enlever l'apostrophe devant la ligne qui suis
'Fe.Range(Target.Address).Offset(0, 1) = ""
End If
End If
Set Fe = Nothing
End Sub
Hervé.
"nyko" <ntouilleux@gmail.com> a écrit dans le message de news:
1188314654.095578.51950@19g2000hsx.googlegroups.com...
Bonjour,
Logiciel : Excel 2000 (vers 9.0.3821 SR1)
Windows XP SP2
Je désire faire une macro qui me permetterait de faire une synchro
entre deux feuilles, si une valeur se trouve identique dans la colonne
A dans les deux feuilles, alors copier la valeur de la colonne B (de
la même ligne de la valeur identique) de la feuille 1 à la feuille 2.
Bonsoir Nyko, A mettre dans le module de la feuille où sont effectués les modifications, les commentaires sont dans le code pour mieux le comprendre :
Private Sub Worksheet_Change(ByVal Target As Range) Dim Fe As Worksheet 'la feuille où doivent être copiées les valeur 's'appelle, ici, "Feuil2", à adapter Set Fe = Worksheets("Feuil2") 'si la cellule subissant la modif est en colonne A 'et que seulement une seule cellule est concernée If Not Intersect(Target, Columns("A")) Is Nothing _ And Target.Count = 1 Then 'compare les valeurs d'une feuille à l'autre et 'd'une cellule à l'autre, si elles sont identiques 'colle la valeur de la cellule en colonne B dans 'la cellule (en colonne B) correspondante If Target.Value = Fe.Range(Target.Address) Then Fe.Range(Target.Address).Offset(0, 1) = Target.Offset(0, 1) Else 'si la cellule doit être vidée de sont contenu 'quand la valeur devient différente 'enlever l'apostrophe devant la ligne qui suis 'Fe.Range(Target.Address).Offset(0, 1) = "" End If End If Set Fe = Nothing End Sub
Hervé.
"nyko" a écrit dans le message de news:
Bonjour,
Logiciel : Excel 2000 (vers 9.0.3821 SR1) Windows XP SP2
Je désire faire une macro qui me permetterait de faire une synchro entre deux feuilles, si une valeur se trouve identique dans la colonne A dans les deux feuilles, alors copier la valeur de la colonne B (de la même ligne de la valeur identique) de la feuille 1 à la feuille 2.
Merci d'avance pour votre aide.
Cordialement,
Nicolas.
nyko
On 28 août, 21:16, "Hervé" wrote:
Bonsoir Nyko, A mettre dans le module de la feuille où sont effectués les modificat ions, les commentaires sont dans le code pour mieux le comprendre :
Private Sub Worksheet_Change(ByVal Target As Range) Dim Fe As Worksheet 'la feuille où doivent être copiées les valeur 's'appelle, ici, "Feuil2", à adapter Set Fe = Worksheets("Feuil2") 'si la cellule subissant la modif est en colonne A 'et que seulement une seule cellule est concernée If Not Intersect(Target, Columns("A")) Is Nothing _ And Target.Count = 1 Then 'compare les valeurs d'une feuille à l'autre et 'd'une cellule à l'autre, si elles sont identiques 'colle la valeur de la cellule en colonne B dans 'la cellule (en colonne B) correspondante If Target.Value = Fe.Range(Target.Address) Then Fe.Range(Target.Address).Offset(0, 1) = Target.Offset(0, 1) Else 'si la cellule doit être vidée de sont contenu 'quand la valeur devient différente 'enlever l'apostrophe devant la ligne qui suis 'Fe.Range(Target.Address).Offset(0, 1) = "" End If End If Set Fe = Nothing End Sub
Hervé.
"nyko" a écrit dans le message de news:
Bonjour,
Logiciel : Excel 2000 (vers 9.0.3821 SR1) Windows XP SP2
Je désire faire une macro qui me permetterait de faire une synchro entre deux feuilles, si une valeur se trouve identique dans la colonne A dans les deux feuilles, alors copier la valeur de la colonne B (de la même ligne de la valeur identique) de la feuille 1 à la feuille 2.
Merci d'avance pour votre aide.
Cordialement,
Nicolas.
Bonjour,
Tout d'abord je remercie Hervé pour cette réponse rapide. Cependant il demeure encore quelques interrogations : 1) Je colle ce code où? (Worksheet en faisant Alt+F11) 2) Le code est à coller dans la feuille 2 c'est bien ça? (feuille où va être inscrit les données) 3)Comment activer/executer le code une fois celui-ci correctement complèter?
Merci d'avance pour toute vos réponses,
Cordialement,
Nicolas.
On 28 août, 21:16, "Hervé" <hmsilve-sans...@wanadoo.fr> wrote:
Bonsoir Nyko,
A mettre dans le module de la feuille où sont effectués les modificat ions,
les commentaires sont dans le code pour mieux le comprendre :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Fe As Worksheet
'la feuille où doivent être copiées les valeur
's'appelle, ici, "Feuil2", à adapter
Set Fe = Worksheets("Feuil2")
'si la cellule subissant la modif est en colonne A
'et que seulement une seule cellule est concernée
If Not Intersect(Target, Columns("A")) Is Nothing _
And Target.Count = 1 Then
'compare les valeurs d'une feuille à l'autre et
'd'une cellule à l'autre, si elles sont identiques
'colle la valeur de la cellule en colonne B dans
'la cellule (en colonne B) correspondante
If Target.Value = Fe.Range(Target.Address) Then
Fe.Range(Target.Address).Offset(0, 1) = Target.Offset(0, 1)
Else
'si la cellule doit être vidée de sont contenu
'quand la valeur devient différente
'enlever l'apostrophe devant la ligne qui suis
'Fe.Range(Target.Address).Offset(0, 1) = ""
End If
End If
Set Fe = Nothing
End Sub
Hervé.
"nyko" <ntouill...@gmail.com> a écrit dans le message de news:
1188314654.095578.51...@19g2000hsx.googlegroups.com...
Bonjour,
Logiciel : Excel 2000 (vers 9.0.3821 SR1)
Windows XP SP2
Je désire faire une macro qui me permetterait de faire une synchro
entre deux feuilles, si une valeur se trouve identique dans la colonne
A dans les deux feuilles, alors copier la valeur de la colonne B (de
la même ligne de la valeur identique) de la feuille 1 à la feuille 2.
Merci d'avance pour votre aide.
Cordialement,
Nicolas.
Bonjour,
Tout d'abord je remercie Hervé pour cette réponse rapide.
Cependant il demeure encore quelques interrogations :
1) Je colle ce code où? (Worksheet en faisant Alt+F11)
2) Le code est à coller dans la feuille 2 c'est bien ça? (feuille où
va être inscrit les données)
3)Comment activer/executer le code une fois celui-ci correctement
complèter?
Bonsoir Nyko, A mettre dans le module de la feuille où sont effectués les modificat ions, les commentaires sont dans le code pour mieux le comprendre :
Private Sub Worksheet_Change(ByVal Target As Range) Dim Fe As Worksheet 'la feuille où doivent être copiées les valeur 's'appelle, ici, "Feuil2", à adapter Set Fe = Worksheets("Feuil2") 'si la cellule subissant la modif est en colonne A 'et que seulement une seule cellule est concernée If Not Intersect(Target, Columns("A")) Is Nothing _ And Target.Count = 1 Then 'compare les valeurs d'une feuille à l'autre et 'd'une cellule à l'autre, si elles sont identiques 'colle la valeur de la cellule en colonne B dans 'la cellule (en colonne B) correspondante If Target.Value = Fe.Range(Target.Address) Then Fe.Range(Target.Address).Offset(0, 1) = Target.Offset(0, 1) Else 'si la cellule doit être vidée de sont contenu 'quand la valeur devient différente 'enlever l'apostrophe devant la ligne qui suis 'Fe.Range(Target.Address).Offset(0, 1) = "" End If End If Set Fe = Nothing End Sub
Hervé.
"nyko" a écrit dans le message de news:
Bonjour,
Logiciel : Excel 2000 (vers 9.0.3821 SR1) Windows XP SP2
Je désire faire une macro qui me permetterait de faire une synchro entre deux feuilles, si une valeur se trouve identique dans la colonne A dans les deux feuilles, alors copier la valeur de la colonne B (de la même ligne de la valeur identique) de la feuille 1 à la feuille 2.
Merci d'avance pour votre aide.
Cordialement,
Nicolas.
Bonjour,
Tout d'abord je remercie Hervé pour cette réponse rapide. Cependant il demeure encore quelques interrogations : 1) Je colle ce code où? (Worksheet en faisant Alt+F11) 2) Le code est à coller dans la feuille 2 c'est bien ça? (feuille où va être inscrit les données) 3)Comment activer/executer le code une fois celui-ci correctement complèter?
Merci d'avance pour toute vos réponses,
Cordialement,
Nicolas.
Hervé
Bonsoir Nyko, Tu doit le mettre dans le module de la feuille où tu entre les valeurs qui doivent être comparées donc, pas la feuille "Feuil2" mais l'autre.
Hervé.
"nyko" a écrit dans le message de news:
On 28 août, 21:16, "Hervé" wrote:
Bonsoir Nyko, A mettre dans le module de la feuille où sont effectués les modifications, les commentaires sont dans le code pour mieux le comprendre :
Private Sub Worksheet_Change(ByVal Target As Range) Dim Fe As Worksheet 'la feuille où doivent être copiées les valeur 's'appelle, ici, "Feuil2", à adapter Set Fe = Worksheets("Feuil2") 'si la cellule subissant la modif est en colonne A 'et que seulement une seule cellule est concernée If Not Intersect(Target, Columns("A")) Is Nothing _ And Target.Count = 1 Then 'compare les valeurs d'une feuille à l'autre et 'd'une cellule à l'autre, si elles sont identiques 'colle la valeur de la cellule en colonne B dans 'la cellule (en colonne B) correspondante If Target.Value = Fe.Range(Target.Address) Then Fe.Range(Target.Address).Offset(0, 1) = Target.Offset(0, 1) Else 'si la cellule doit être vidée de sont contenu 'quand la valeur devient différente 'enlever l'apostrophe devant la ligne qui suis 'Fe.Range(Target.Address).Offset(0, 1) = "" End If End If Set Fe = Nothing End Sub
Hervé.
"nyko" a écrit dans le message de news:
Bonjour,
Logiciel : Excel 2000 (vers 9.0.3821 SR1) Windows XP SP2
Je désire faire une macro qui me permetterait de faire une synchro entre deux feuilles, si une valeur se trouve identique dans la colonne A dans les deux feuilles, alors copier la valeur de la colonne B (de la même ligne de la valeur identique) de la feuille 1 à la feuille 2.
Merci d'avance pour votre aide.
Cordialement,
Nicolas.
Bonjour,
Tout d'abord je remercie Hervé pour cette réponse rapide. Cependant il demeure encore quelques interrogations : 1) Je colle ce code où? (Worksheet en faisant Alt+F11) 2) Le code est à coller dans la feuille 2 c'est bien ça? (feuille où va être inscrit les données) 3)Comment activer/executer le code une fois celui-ci correctement complèter?
Merci d'avance pour toute vos réponses,
Cordialement,
Nicolas.
Bonsoir Nyko,
Tu doit le mettre dans le module de la feuille où tu entre les valeurs qui
doivent être comparées donc, pas la feuille "Feuil2" mais l'autre.
Hervé.
"nyko" <ntouilleux@gmail.com> a écrit dans le message de news:
1188371190.818653.176220@50g2000hsm.googlegroups.com...
On 28 août, 21:16, "Hervé" <hmsilve-sans...@wanadoo.fr> wrote:
Bonsoir Nyko,
A mettre dans le module de la feuille où sont effectués les modifications,
les commentaires sont dans le code pour mieux le comprendre :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Fe As Worksheet
'la feuille où doivent être copiées les valeur
's'appelle, ici, "Feuil2", à adapter
Set Fe = Worksheets("Feuil2")
'si la cellule subissant la modif est en colonne A
'et que seulement une seule cellule est concernée
If Not Intersect(Target, Columns("A")) Is Nothing _
And Target.Count = 1 Then
'compare les valeurs d'une feuille à l'autre et
'd'une cellule à l'autre, si elles sont identiques
'colle la valeur de la cellule en colonne B dans
'la cellule (en colonne B) correspondante
If Target.Value = Fe.Range(Target.Address) Then
Fe.Range(Target.Address).Offset(0, 1) = Target.Offset(0, 1)
Else
'si la cellule doit être vidée de sont contenu
'quand la valeur devient différente
'enlever l'apostrophe devant la ligne qui suis
'Fe.Range(Target.Address).Offset(0, 1) = ""
End If
End If
Set Fe = Nothing
End Sub
Hervé.
"nyko" <ntouill...@gmail.com> a écrit dans le message de news:
1188314654.095578.51...@19g2000hsx.googlegroups.com...
Bonjour,
Logiciel : Excel 2000 (vers 9.0.3821 SR1)
Windows XP SP2
Je désire faire une macro qui me permetterait de faire une synchro
entre deux feuilles, si une valeur se trouve identique dans la colonne
A dans les deux feuilles, alors copier la valeur de la colonne B (de
la même ligne de la valeur identique) de la feuille 1 à la feuille 2.
Merci d'avance pour votre aide.
Cordialement,
Nicolas.
Bonjour,
Tout d'abord je remercie Hervé pour cette réponse rapide.
Cependant il demeure encore quelques interrogations :
1) Je colle ce code où? (Worksheet en faisant Alt+F11)
2) Le code est à coller dans la feuille 2 c'est bien ça? (feuille où
va être inscrit les données)
3)Comment activer/executer le code une fois celui-ci correctement
complèter?
Bonsoir Nyko, Tu doit le mettre dans le module de la feuille où tu entre les valeurs qui doivent être comparées donc, pas la feuille "Feuil2" mais l'autre.
Hervé.
"nyko" a écrit dans le message de news:
On 28 août, 21:16, "Hervé" wrote:
Bonsoir Nyko, A mettre dans le module de la feuille où sont effectués les modifications, les commentaires sont dans le code pour mieux le comprendre :
Private Sub Worksheet_Change(ByVal Target As Range) Dim Fe As Worksheet 'la feuille où doivent être copiées les valeur 's'appelle, ici, "Feuil2", à adapter Set Fe = Worksheets("Feuil2") 'si la cellule subissant la modif est en colonne A 'et que seulement une seule cellule est concernée If Not Intersect(Target, Columns("A")) Is Nothing _ And Target.Count = 1 Then 'compare les valeurs d'une feuille à l'autre et 'd'une cellule à l'autre, si elles sont identiques 'colle la valeur de la cellule en colonne B dans 'la cellule (en colonne B) correspondante If Target.Value = Fe.Range(Target.Address) Then Fe.Range(Target.Address).Offset(0, 1) = Target.Offset(0, 1) Else 'si la cellule doit être vidée de sont contenu 'quand la valeur devient différente 'enlever l'apostrophe devant la ligne qui suis 'Fe.Range(Target.Address).Offset(0, 1) = "" End If End If Set Fe = Nothing End Sub
Hervé.
"nyko" a écrit dans le message de news:
Bonjour,
Logiciel : Excel 2000 (vers 9.0.3821 SR1) Windows XP SP2
Je désire faire une macro qui me permetterait de faire une synchro entre deux feuilles, si une valeur se trouve identique dans la colonne A dans les deux feuilles, alors copier la valeur de la colonne B (de la même ligne de la valeur identique) de la feuille 1 à la feuille 2.
Merci d'avance pour votre aide.
Cordialement,
Nicolas.
Bonjour,
Tout d'abord je remercie Hervé pour cette réponse rapide. Cependant il demeure encore quelques interrogations : 1) Je colle ce code où? (Worksheet en faisant Alt+F11) 2) Le code est à coller dans la feuille 2 c'est bien ça? (feuille où va être inscrit les données) 3)Comment activer/executer le code une fois celui-ci correctement complèter?