Copier coller à la fin d'un autre classeur vba

Vdelz -  
yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

J'essaie de faire un truc pas facile pour moi qui débute en programmation et je deviens fou: j'aimerais en cliquant sur un bouton copier certaines valeurs et les coller à la dernière ligne d'un autre classeur (déjà ouvert). Voici le code que j'ai essayé:


Dim derligne As Integer

derligne = Workbooks("Classeurtest.xlsm").Worksheets("Feuill1").Range("A" & Rows.Count).End(xlUp).Row
derligne = derligne + 1 'j'ai essayé sans " Workbooks("Classeurtest.xlsm").Worksheets("Feuill1")" mais ça rajoute à la première ligne du nouveau classeur

With ThisWorkbook.Worksheets("Formulaire") ' Mon premier classeur qui servira de source pour la copie
Set MaPlage = Range("B2")
End With

MaPlage.Copy
ActiveSheet.Paste Destination:=Workbooks("Classeurtest.xlsm").Worksheets("Feuil1").Cells(derligne) 'Copie vers le fichier de Michael, changer le nom
Application.CutCopyMode = False



Pourriez-vous m'aider svp? D'avance, merci.

3 réponses

  1. patty5046 Messages postés 46 Statut Membre 5
     
    Bonjour


    With ThisWorkbook.Worksheets("Formulaire") ' Mon premier classeur qui servira de source pour la copie
    Set MaPlage = Range("B2")
    End With


    Je pense que tu devrais faire cela :

    With ThisWorkbook.Worksheets("Formulaire") ' Mon premier classeur qui servira de source pour la copie
    Set MaPlage = .Range("B2")
    End With


    Rajouter un point devant range.
    Si cela ne va toujours pas joins un extrait de tes 2 fichiers

    Bye
    0
  2. Patrice33740 Messages postés 8400 Date d'inscription   Statut Membre Dernière intervention   1 784
     
    Bonjour,

    Pour l'exemple, je préfère :
    Option Explicit
    Sub xxx()
    Dim MaPlage As Range
    Dim MaDestination As Range
      
      With Workbooks("Classeurtest.xlsm").Worksheets("Feuill1")
        Set MaDestination = .Range("A" & Rows.Count).End(xlUp).Offset(1)
      End With
      With ThisWorkbook.Worksheets("Formulaire") ' Mon premier classeur qui servira de source
        Set MaPlage = .Range("B2")
      End With
      MaPlage.Copy Destination:=MaDestination
     
    End Sub


    0
  3. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 588
     
    attention: Feuil1 ou Feuill1?
    0