Envoi ligne copiée d(un classeur ouvert vers classeur fermé

bonjour à tous,

petite question, ci joint un code qui copie une ligne d'un classeur ouvert vers un classeur qui normalement est fermé, ce code fonctionne à condition que je l'ouvre préalablement. comment faire pour que l'opération s'exécute sans ouvrir celui ci?

j ai bien trouvé sur le forum mais je n'arrive pas à l'adapter .

ps: débutant en vba.

merci d'avance.

nl

Private Sub CommandButton5_Click()

Sheets("Feuil2").Select

Range("A3:BX3").Copy

Workbooks.Open ("recapessai") ' c'est celui ci qui est fermé est ce trouve dans un dossier nommé "gestion" '

ThisWorkbook.Sheets(2).Activate

Sheets(2).Range("A" & Sheets(2).Range("A" & Rows.Count).End(xlUp).Row + 1).PasteSpecial Paste:=xlPasteValues

Application.CutCopyMode = False

Workbooks("recapessai").Close

Sheets("recap").Select

Range("A3").CurrentRegion.Offset(1).Resize(Range("A3").CurrentRegion.Rows.Count - 1,

Range("R3").CurrentRegion.Columns.Count).Select

Selection.Delete

Sheets("BD").Select

End Sub

Bonjour

Sans test

Private Sub CommandButton5_Click()
Dim Chemin As String

  Chemin = "Il faut inscrire le chemin du dossier contenant ""recapessai"" & " \ ""
  Sheets("Feuil2").Range("A3:BX3").Copy
  With Workbooks.Open(Chemin & "recapessai.xls")     ' Ne pas oublier l'extension du fichier
    .Sheets(2).Range("A" & .Sheets(2).Range("A" & Rows.Count).End(xlUp).Row + 1).PasteSpecial Paste:=xlPasteValues
    Application.CutCopyMode = False
    .Close savechanges:=True
  End With

  Sheets("recap").Select
  Range("A3").CurrentRegion.Offset(1).Resize(Range("A3").CurrentRegion.Rows.Count - 1, Range("R3").CurrentRegion.Columns.Count).Select
  Selection.Delete

  Sheets("BD").Select

End Sub

Si pas ça il faut que tu joignes les 2 fichiers (le principal avec la macro ainsi que le fichier archive)

bonjour banzai64,

merci pour cette réponse, je test le code.

Rechercher des sujets similaires à "envoi ligne copiee classeur ouvert ferme"