Copier plage d'une feuille et coller l'ensemble sur autre feuille
7 réponses
Philippe Meresse
Bonsoir, (Excel 2007),
je cherche à copier automatiquement (format de cellule, valeurs,
pourcentage, etc...) la plage A17:T30 d'une feuille "Groupe" (à chaque
modification de cette plage) vers toutes les autres feuilles derrière
celle-ci en A6:T19.
Si pas possible, ben alors je souhaiterai copier automatiquement (format de
cellule, valeurs, pourcentage, etc...) la plage A17:T30 d'une feuille
"Groupe" (à chaque modification de cette plage) vers feuille "BSD" en
A6:T19, vers feuille "BMB" en A6:T19 et ainsi de suite (je créerai les
feuilles).
merci d'avance pour votre aide,
Philippe (il y a bien longtemps que je n'étais pas venu ;-)
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
francois.forcet
Salut Philippe
Dans le VBA de ta feuille "Groupe" mets ce code :
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Row > 16 And Target.Row < 31 And Target.Column > 0 And Target.Column < 21 Then For i = 1 To Sheets.Count If Sheets(i).Name <> "Feuil1" Then Sheets("Feuil1").Range("A17", "T30").Copy Sheets(i).Range("A6") End If Next End If End Sub
Fais des essais et dis moi !!!!
Salut Philippe
Dans le VBA de ta feuille "Groupe" mets ce code :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Row > 16 And Target.Row < 31 And Target.Column > 0 And
Target.Column < 21 Then
For i = 1 To Sheets.Count
If Sheets(i).Name <> "Feuil1" Then
Sheets("Feuil1").Range("A17", "T30").Copy Sheets(i).Range("A6")
End If
Next
End If
End Sub
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Row > 16 And Target.Row < 31 And Target.Column > 0 And Target.Column < 21 Then For i = 1 To Sheets.Count If Sheets(i).Name <> "Feuil1" Then Sheets("Feuil1").Range("A17", "T30").Copy Sheets(i).Range("A6") End If Next End If End Sub
Fais des essais et dis moi !!!!
Fredo P
_Dans le code Feuille("Groupe")
Private Sub Worksheet_Change(ByVal Target As Excel.Range) If Not Intersect([A17:T30], Target) Is Nothing Then Copie MsgBox "Copie effectuée" End If End Sub
_In Module Public Sub Copie() Dim Rg As Range, Ws As Worksheet For Each Ws In Worksheets If Ws.Name <> "Groupe" Then [Groupe!A17:T30].Copy Destination:=Ws.[A6] End If Next End Sub
http://cjoint.com/?gtksMbizYX
"Philippe Meresse" a écrit dans le message de news: 48592eb7$0$884$
Bonsoir, (Excel 2007),
je cherche à copier automatiquement (format de cellule, valeurs, pourcentage, etc...) la plage A17:T30 d'une feuille "Groupe" (à chaque modification de cette plage) vers toutes les autres feuilles derrière celle-ci en A6:T19.
Si pas possible, ben alors je souhaiterai copier automatiquement (format de cellule, valeurs, pourcentage, etc...) la plage A17:T30 d'une feuille "Groupe" (à chaque modification de cette plage) vers feuille "BSD" en A6:T19, vers feuille "BMB" en A6:T19 et ainsi de suite (je créerai les feuilles).
merci d'avance pour votre aide,
Philippe (il y a bien longtemps que je n'étais pas venu ;-)
_Dans le code Feuille("Groupe")
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Not Intersect([A17:T30], Target) Is Nothing Then
Copie
MsgBox "Copie effectuée"
End If
End Sub
_In Module
Public Sub Copie()
Dim Rg As Range, Ws As Worksheet
For Each Ws In Worksheets
If Ws.Name <> "Groupe" Then
[Groupe!A17:T30].Copy Destination:=Ws.[A6]
End If
Next
End Sub
http://cjoint.com/?gtksMbizYX
"Philippe Meresse" <philippe.meresse@orange.fr> a écrit dans le message de
news: 48592eb7$0$884$ba4acef3@news.orange.fr...
Bonsoir, (Excel 2007),
je cherche à copier automatiquement (format de cellule, valeurs,
pourcentage, etc...) la plage A17:T30 d'une feuille "Groupe" (à chaque
modification de cette plage) vers toutes les autres feuilles derrière
celle-ci en A6:T19.
Si pas possible, ben alors je souhaiterai copier automatiquement (format
de cellule, valeurs, pourcentage, etc...) la plage A17:T30 d'une feuille
"Groupe" (à chaque modification de cette plage) vers feuille "BSD" en
A6:T19, vers feuille "BMB" en A6:T19 et ainsi de suite (je créerai les
feuilles).
merci d'avance pour votre aide,
Philippe (il y a bien longtemps que je n'étais pas venu ;-)
Private Sub Worksheet_Change(ByVal Target As Excel.Range) If Not Intersect([A17:T30], Target) Is Nothing Then Copie MsgBox "Copie effectuée" End If End Sub
_In Module Public Sub Copie() Dim Rg As Range, Ws As Worksheet For Each Ws In Worksheets If Ws.Name <> "Groupe" Then [Groupe!A17:T30].Copy Destination:=Ws.[A6] End If Next End Sub
http://cjoint.com/?gtksMbizYX
"Philippe Meresse" a écrit dans le message de news: 48592eb7$0$884$
Bonsoir, (Excel 2007),
je cherche à copier automatiquement (format de cellule, valeurs, pourcentage, etc...) la plage A17:T30 d'une feuille "Groupe" (à chaque modification de cette plage) vers toutes les autres feuilles derrière celle-ci en A6:T19.
Si pas possible, ben alors je souhaiterai copier automatiquement (format de cellule, valeurs, pourcentage, etc...) la plage A17:T30 d'une feuille "Groupe" (à chaque modification de cette plage) vers feuille "BSD" en A6:T19, vers feuille "BMB" en A6:T19 et ainsi de suite (je créerai les feuilles).
merci d'avance pour votre aide,
Philippe (il y a bien longtemps que je n'étais pas venu ;-)
francois.forcet
Rebonjours Philippes
Juste une petite correction dans ma proposition Changes "Feuil1" par "Groupe"
Mille excuses pour l'erreur
Donnes moi des nouvelles !!!!
Rebonjours Philippes
Juste une petite correction dans ma proposition
Changes "Feuil1" par "Groupe"
Juste une petite correction dans ma proposition Changes "Feuil1" par "Groupe"
Mille excuses pour l'erreur
Donnes moi des nouvelles !!!!
Philippe Meresse
Bonsoir Fred, Bon alors ç'a marche mais (oui mais ;-)) ç'a le copie même dans les feuilles avant "Groupe" et la c'est pas bon. je m'explique un peu; j'ai donc plusieurs feuilles, 1,2,Groupe, 3,4,5, etc c'est donc exactement la manip de copier que tu as faites mais le collage vers 3,4,5, etc. c'est pas infini, il y en a une vingtaine et dans la macro on peu peu etre les lister une par une. J'ai essayé de le faire par l'enregistreur, y'a pas d'erreur, il copie mais il ne colle rien en destination. je comprends plus rien Merci, Philippe PS: code de l'enregistreur:
----- Original Message ----- From: "Fredo P" Newsgroups: microsoft.public.fr.excel Sent: Thursday, June 19, 2008 10:20 AM Subject: Re: Copier plage d'une feuille et coller l'ensemble sur autre feuille
_Dans le code Feuille("Groupe")
Private Sub Worksheet_Change(ByVal Target As Excel.Range) If Not Intersect([A17:T30], Target) Is Nothing Then Copie MsgBox "Copie effectuée" End If End Sub
_In Module Public Sub Copie() Dim Rg As Range, Ws As Worksheet For Each Ws In Worksheets If Ws.Name <> "Groupe" Then [Groupe!A17:T30].Copy Destination:=Ws.[A6] End If Next End Sub
http://cjoint.com/?gtksMbizYX
Bonsoir Fred,
Bon alors ç'a marche mais (oui mais ;-)) ç'a le copie même dans les feuilles
avant "Groupe" et la c'est pas bon.
je m'explique un peu;
j'ai donc plusieurs feuilles,
1,2,Groupe, 3,4,5, etc
c'est donc exactement la manip de copier que tu as faites mais le collage
vers 3,4,5, etc.
c'est pas infini, il y en a une vingtaine et dans la macro on peu peu etre
les lister une par une.
J'ai essayé de le faire par l'enregistreur, y'a pas d'erreur, il copie mais
il ne colle rien en destination.
je comprends plus rien
Merci,
Philippe
PS: code de l'enregistreur:
----- Original Message -----
From: "Fredo P" <ponsinet.frederic363etdesbrouettes@orange.fr>
Newsgroups: microsoft.public.fr.excel
Sent: Thursday, June 19, 2008 10:20 AM
Subject: Re: Copier plage d'une feuille et coller l'ensemble sur autre
feuille
_Dans le code Feuille("Groupe")
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Not Intersect([A17:T30], Target) Is Nothing Then
Copie
MsgBox "Copie effectuée"
End If
End Sub
_In Module
Public Sub Copie()
Dim Rg As Range, Ws As Worksheet
For Each Ws In Worksheets
If Ws.Name <> "Groupe" Then
[Groupe!A17:T30].Copy Destination:=Ws.[A6]
End If
Next
End Sub
Bonsoir Fred, Bon alors ç'a marche mais (oui mais ;-)) ç'a le copie même dans les feuilles avant "Groupe" et la c'est pas bon. je m'explique un peu; j'ai donc plusieurs feuilles, 1,2,Groupe, 3,4,5, etc c'est donc exactement la manip de copier que tu as faites mais le collage vers 3,4,5, etc. c'est pas infini, il y en a une vingtaine et dans la macro on peu peu etre les lister une par une. J'ai essayé de le faire par l'enregistreur, y'a pas d'erreur, il copie mais il ne colle rien en destination. je comprends plus rien Merci, Philippe PS: code de l'enregistreur:
----- Original Message ----- From: "Fredo P" Newsgroups: microsoft.public.fr.excel Sent: Thursday, June 19, 2008 10:20 AM Subject: Re: Copier plage d'une feuille et coller l'ensemble sur autre feuille
_Dans le code Feuille("Groupe")
Private Sub Worksheet_Change(ByVal Target As Excel.Range) If Not Intersect([A17:T30], Target) Is Nothing Then Copie MsgBox "Copie effectuée" End If End Sub
_In Module Public Sub Copie() Dim Rg As Range, Ws As Worksheet For Each Ws In Worksheets If Ws.Name <> "Groupe" Then [Groupe!A17:T30].Copy Destination:=Ws.[A6] End If Next End Sub
http://cjoint.com/?gtksMbizYX
Philippe Meresse
Bonsoir à Fredo et François, A force de chercher, "trifouiller" et surtout essayer de comprendre, ben j'ai sorti ç'a que j'ai associé à un bouton:
c'est pas très beau mais ç'a marche, @+ et encore merci philippe
Fredo P
Une Variante adaptée pour la cause
Public Sub Copie() Dim X X = Array("Groupe", "BHP", "BMB", "BSD", "BBI", "BOD", "BSY", "BVJ", "BGG", "BSJ", _ "CET", "CPP", "UNY", "UDD", "UMP", "UBM", "UEE") Sheets(X).FillAcrossSheets Worksheets("Groupe").Range("A19:T30") End Sub
"Philippe Meresse" a écrit dans le message de news: 485c14ff$0$904$
Bonsoir à Fredo et François, A force de chercher, "trifouiller" et surtout essayer de comprendre, ben j'ai sorti ç'a que j'ai associé à un bouton:
c'est pas très beau mais ç'a marche, @+ et encore merci philippe
Une Variante adaptée pour la cause
Public Sub Copie()
Dim X
X = Array("Groupe", "BHP", "BMB", "BSD", "BBI", "BOD", "BSY", "BVJ", "BGG",
"BSJ", _
"CET", "CPP", "UNY", "UDD", "UMP", "UBM", "UEE")
Sheets(X).FillAcrossSheets Worksheets("Groupe").Range("A19:T30")
End Sub
"Philippe Meresse" <philippe.meresse@orange.fr> a écrit dans le message de
news: 485c14ff$0$904$ba4acef3@news.orange.fr...
Bonsoir à Fredo et François,
A force de chercher, "trifouiller" et surtout essayer de comprendre, ben
j'ai sorti ç'a que j'ai associé à un bouton:
Public Sub Copie() Dim X X = Array("Groupe", "BHP", "BMB", "BSD", "BBI", "BOD", "BSY", "BVJ", "BGG", "BSJ", _ "CET", "CPP", "UNY", "UDD", "UMP", "UBM", "UEE") Sheets(X).FillAcrossSheets Worksheets("Groupe").Range("A19:T30") End Sub
"Philippe Meresse" a écrit dans le message de news: 485c14ff$0$904$
Bonsoir à Fredo et François, A force de chercher, "trifouiller" et surtout essayer de comprendre, ben j'ai sorti ç'a que j'ai associé à un bouton:
c'est pas très beau mais ç'a marche, @+ et encore merci philippe
francois.forcet
Rebonjours Philippes Suite à ton Mail je t'ai dans ma réponse en retour fait cette proposition :
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Row > 16 And Target.Row < 31 And Target.Column > 0 And Target.Column < 21 Then For i = 2 To Sheets.Count If Sheets(i - 1).Name = "Groupe" Then Copie = "OK" End If If Copie = "OK" Then Sheets("Groupe").Range("A17", "T30").Copy Sheets(i).Range("A6") End If Next End If End Sub
L'as tu essayée !!!!
Donnes moi des nouvelles
Rebonjours Philippes
Suite à ton Mail je t'ai dans ma réponse en retour fait cette
proposition :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Row > 16 And Target.Row < 31 And Target.Column > 0 And
Target.Column < 21 Then For i = 2 To Sheets.Count
If Sheets(i - 1).Name = "Groupe" Then
Copie = "OK"
End If
If Copie = "OK" Then
Sheets("Groupe").Range("A17", "T30").Copy Sheets(i).Range("A6")
End If
Next
End If
End Sub
Rebonjours Philippes Suite à ton Mail je t'ai dans ma réponse en retour fait cette proposition :
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Row > 16 And Target.Row < 31 And Target.Column > 0 And Target.Column < 21 Then For i = 2 To Sheets.Count If Sheets(i - 1).Name = "Groupe" Then Copie = "OK" End If If Copie = "OK" Then Sheets("Groupe").Range("A17", "T30").Copy Sheets(i).Range("A6") End If Next End If End Sub