Copier la plage vers une autre feuille, Excel VBA

Copier la plage vers une autre feuille, Excel VBA

Voici un exemple de code VBA détaillé pour copier une plage de données d’une feuille vers une autre feuille dans Excel. Ce code comprend des explications à chaque étape pour que vous puissiez bien comprendre le fonctionnement. 

Objectif : Copier une plage de données d’une feuille à une autre. 

Étapes du code : 

  1. Définir les objets de travail : Vous devez définir les feuilles et la plage de données à copier. 
  2. Copier la plage : Utilisez la méthode Copy pour copier les données. 
  3. Coller la plage : Après la copie, utilisez la méthode Paste pour coller les données à l’endroit souhaité. 

Code VBA détaillé :

Sub CopierPlageVersAutreFeuille() 
    ' Déclaration des variables 
    Dim SourceSheet As Worksheet ' Feuille source 
    Dim DestinationSheet As Worksheet ' Feuille de destination 
    Dim PlageSource As Range ' Plage de cellules à copier 
    Dim PlageDestination As Range ' Plage de cellules où coller 
    ' Référence aux feuilles source et destination 
    Set SourceSheet = ThisWorkbook.Sheets("Feuille1") ' Remplacez "Feuille1" par le nom de votre feuille source 
    Set DestinationSheet = ThisWorkbook.Sheets("Feuille2") ' Remplacez "Feuille2" par le nom de votre feuille de destination 
    ' Définir la plage à copier (par exemple A1:C10 de la feuille source) 
    Set PlageSource = SourceSheet.Range("A1:C10") 
    ' Définir la première cellule de la plage de destination (par exemple A1 de la feuille de destination) 
    Set PlageDestination = DestinationSheet.Range("A1") 
    ' Copier la plage de la feuille source 
    PlageSource.Copy 
    ' Coller la plage dans la feuille de destination à l'endroit défini 
    PlageDestination.PasteSpecial Paste:=xlPasteAll ' Vous pouvez aussi utiliser xlPasteValues, xlPasteFormats, etc. 
    ' Désactiver le mode copie (enlever le "marquage" de la sélection) 
    Application.CutCopyMode = False 
    ' Message de confirmation 
    MsgBox "Les données ont été copiées avec succès !", vbInformation 
End Sub

Explication du code : 

1. Déclaration des variables : 

  • SourceSheet : représente la feuille de travail contenant les données à copier. 
  • DestinationSheet : représente la feuille où vous voulez coller les données. 
  • PlageSource : représente la plage de cellules à copier. 
  • PlageDestination : représente la cellule de destination où les données seront collées. 

2. Références aux feuilles : 

  • Set SourceSheet = ThisWorkbook.Sheets(« Feuille1 ») : ici, vous spécifiez le nom de la feuille source (à modifier selon vos besoins). 
  • Set DestinationSheet = ThisWorkbook.Sheets(« Feuille2 ») : de même, vous spécifiez la feuille de destination. 

3. Définition des plages : 

  • Set PlageSource = SourceSheet.Range(« A1:C10 ») : cela définit la plage à copier. Dans cet exemple, cela copie de A1 à C10. 
  • Set PlageDestination = DestinationSheet.Range(« A1 ») : définit la cellule de destination où la plage copiée sera collée. 

4. Copier la plage : 

  • PlageSource.Copy : cette commande copie la plage spécifiée. 

5. Coller la plage : 

  • PlageDestination.PasteSpecial Paste:=xlPasteAll : cela colle les données copiées dans la plage de destination. L’option xlPasteAll colle tout (valeurs, formats, formules, etc.). Vous pouvez modifier cette option selon vos besoins (par exemple, xlPasteValues pour ne coller que les valeurs). 

6. Désactiver le mode « Copier » : 

  • Application.CutCopyMode = False : cela désactive le mode de copie après l’opération, supprimant la « sélection en pointillé » autour de la plage copiée. 

7. Message de confirmation : 

  • MsgBox « Les données ont été copiées avec succès ! », vbInformation : un message s’affiche pour informer l’utilisateur que l’opération a été effectuée avec succès. 

Personnalisation du code : 

  • Plage Source : Vous pouvez modifier la plage de cellules à copier (par exemple A1:C10), ou la rendre dynamique selon votre besoin. 
  • Plage Destination : Vous pouvez spécifier où vous voulez coller les données (par exemple, la cellule A1 de la feuille de destination). 
Facebook
Twitter
LinkedIn
WhatsApp
Email
Print
0
Nous aimerions avoir votre avis, veuillez laisser un commentaire.x