Copier donnée d'une colonne vers tout mon classeur

Résolu
Eric -  
 Eric - 16 sept. 2020 à 11:06
Bonjour,

J'ai une petite requête, j'aimerais copier les données d'une colonne dans tous mes autres onglets automatiquement.

J'utilise ce code qui fonctionne très bien (pour ceux que ça peut aider)
Sheets("mafeuilleprincipale").Range("A:A").Copy
ActiveSheet.Paste Destination:=Worksheets("mafeuillededestination").Range("D:D")

Maintenant j'aimerais ne pas viser une feuille comme destination, mais tout mon classeur, pour que ma colonne copier apparaisse dans tous mes onglets.

Merci d'avance

Configuration: Windows / Edge 18.17763
A voir également:

3 réponses

cs_Le Pivert Messages postés 7904 Date d'inscription   Statut Contributeur Dernière intervention   729
 
Bonjour,

voir ceci pour boucler sur toutes les feuilles:

https://silkyroad.developpez.com/VBA/FeuilleDeCalcul/

ce qui donne:

Option Explicit
'https://silkyroad.developpez.com/VBA/FeuilleDeCalcul/
Sub test()
'Déclare la variable objet Worksheet
Dim Ws As Worksheet
'Boucle sur toutes les feuille de calcul du classeur. Les onglets graphiques ne sont pas pris
'en compte.
'ThisWorkbook correspond à l'objet classeur contenant la macro
For Each Ws In ThisWorkbook.Worksheets
    If Ws.Name <> "Feuil1" Then 'adapter le nom de la feuille
Worksheets("Feuil1").Range("A:A").Copy Destination:=Worksheets(Ws.Name).Range("D:D")
    End If
Next Ws
End Sub


1
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
bonjour, suggestion:
Dim src As Range, fdest As Worksheet
Set src = Sheets("mafeuilleprincipale").Range("A:A")
For Each fdest In ThisWorkbook.Worksheets
    src.Copy (fdest.[d1])
Next fdest
1
Eric
 
Bonjour yb_be,

Merci pour ta suggestion, mais je me pose une question avec ton code, serait-il possible de placer un -1 quelque part ou une ligne de code demandant de partir de la feuille "mafeuilleprincipale" sans la prendre compte.
Et d'appliquer la modification de la boucle comme tu l'as fait, sans appliquer la modification dans la colonne D pour l'onglet "mafeuilleprincipale" ?
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > Eric
 
peut-être ainsi:
Const nomfp As String = "mafeuilleprincipale"
Dim src As Range, fdest As Worksheet
Set src = Sheets(nomfp).Range("A:A")
For Each fdest In ThisWorkbook.Worksheets
    If fdest.Name <> nomfp Then
        src.Copy (fdest.[D1])
    End If
Next fdest
0
Eric > yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention  
 
Parfait !

Un immense merci à toi
0
Eric
 
Bonjour,

Je ne parviens pas à ouvrir le lien, mais merci beaucoup pour le code !
0