Recopie plage de données avec liaison

dj dim

XLDnaute Occasionnel
Bonjour à tous et toutes,

Je me permets une nouvelle fois d'ouvrir une discussion.

Je veux faire une recopie de de cellules d'une feuille vers une autre feuille.

Jusqu'ici tout fonctionne avec le code ci-dessous (vous excuser mes annotations mais étant novice cela me permet de me rappeler et comprendre les fonctions) :

Code:
Sub Macro_Copy()
ActiveSheet.Unprotect Password:="dt"
Worksheets("Commercial").Select 'selection de la feuille où tu veux selectionner les données a copier
Range("A5:C200").Select 'plage de cellule à copier ici c'est de A5 à C200
Selection.Copy 'on copie
Sheets("Facturation").Select 'selection de la feuille ou tu veux coller les données
Range("A6").Select 'cellule a partir de laquelle tu veux coller
ActiveSheet.Paste 'coller
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:="dt"
End Sub

Je souhaiterai que lorque j'insere une ligne dans ma feuille "Commercial", celle ci s'incrémente automatiquement dans la feuille "Facturation".

Espérant qu'une âme charitable passe par là ... Je vous remrcie par avance
 

James007

XLDnaute Barbatruc
Re : Recopie plage de données avec liaison

Bonjour,

Il faut distinguer Insérer et Ajouter ...
1. Ajouter signifie une ligne supplémentaire en fin de liste ...
2. Insérer signifie une ligne supplémentaire au milieu de la liste ...
Dans quel cas précis es-tu ?

A +
 

James007

XLDnaute Barbatruc
Re : Recopie plage de données avec liaison

Bonjour,

Pour une première amélioration ...
Code:
Sub Macro_Copy()
Sheets("Commercial").Unprotect Password:="dt"
Sheets("Facturation").Unprotect Password:="dt"

Sheets("Commercial").Range("A5:C200").Copy _
Destination:=Sheets("Facturation").Range("A6")

Sheets("Commercial").Protect Password:="dt"
Sheets("Facturation").Protect Password:="dt"
End Sub

A +
 

dj dim

XLDnaute Occasionnel
Re : Recopie plage de données avec liaison

Merci James 007,

J'ai testé ton code mais le problème reste le même.

La copie s'effectue mais le décalage lors de l'insertion d'une ligne dans l'onglet "Commercial" ne s'effectue pas sur la totalité de la ligne dans l'onglet "Facturation"
 

dj dim

XLDnaute Occasionnel
Re : Recopie plage de données avec liaison

Hello le forum, salut James007,

J'ai finalement trouvé une solution à mon problème.

Merci à toi James007.

Voici le code pour ceux que ca intéresse :

Code:
Sub Macro_Copy()
ActiveSheet.Unprotect Password:="dt"
Application.ScreenUpdating = False
Worksheets("Commercial").Select 'selection de la feuille ou tu veux selectionner les données a copier
Range("A5:C200").Select 'plage de cellule a copier ici c'est de A5 à C200
Selection.Copy 'on copie
With Sheets("Facturation").Range("A6")
.PasteSpecial Paste:=xlValues
.PasteSpecial Paste:=xlFormats
End With


'Tri de l'onglet Commercial
Worksheets("Commercial").Select 'selection de la feuille ou tu veux selectionner les données a copier
Range("A5:AY200").Select 'plage par exemple où sont tes noms et adresses
Selection.Sort Key1:=Range("C5"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom 'A5 est la cellule où il y a le premier nom
Range("A5").Select


'Tri de l'onglet Facturation
Worksheets("Facturation").Select 'selection de la feuille ou tu veux selectionner les données a copier
Range("A6:AS200").Select 'plage par exemple où sont tes noms et adresses
Selection.Sort Key1:=Range("C6"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom 'A6 est la cellule où il y a le premier nom
Range("A6").Select

Application.ScreenUpdating = True
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=False, Password:="dt"
End Sub
 

Discussions similaires

Réponses
5
Affichages
138

Statistiques des forums

Discussions
312 379
Messages
2 087 761
Membres
103 661
dernier inscrit
fcleves