Copier coller des données dans deux classeurs différents

LinlinDou -  
yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour à tous,
Je suis novice en VBA et j'ai besoin d'aide pour optimiser un fichier.

je rencontre un soucis sur mon programme VBA. je souhaite copier coller des données d'un feuille sur une feuille d'un autre fichier excel dans le but d'avoir toujours des information actualisées

avec mon code, il ne copie rien.. Pourriez vous me donner la bonne formule
merci bcp

Private Sub workbook_open()

Application.EnableEvents = False
Workbooks.Open Filename:="P:\DARM\ZZ\Planning\DataS.xlsx", ReadOnly:=True
Application.EnableEvents = True

Sheets("Datas S").Activate
Range("A1:O5000").Copy
Windows("Pilotage montage.xlsm").Activate

Sheets("Datas S").Range("A1").Activate
Selection.PasteSpecial Paste:=xlValues


Application.AlertBeforeOverwriting = False
Workbooks("DataS.xlsx").Close savechanges:=False
Application.AlertBeforeOverwriting = True

End Sub


Configuration: Windows / Internet Explorer 11.0

1 réponse

  1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 588
     
    bonjour,
    j'ai simplifié ton code, sans tester:
    Option Explicit
    
    Private Sub workbook_open()
    Dim datas As Workbook
    Application.EnableEvents = False
    Set datas = Workbooks.Open("P:\DARM\ZZ\Planning\DataS.xlsx", True)
    Application.EnableEvents = True
    datas.Sheets("Datas S").Range("A1:O5000").Copy
    ThisWorkbook.Sheets("Datas S").Range("A1").PasteSpecial Paste:=xlValues
    datas.Close savechanges:=False
    End Sub
    
    0
    1. Linlindou
       
      Merci pour ta reponse.

      Un soucis je n arrive pas a fermer le fichier dataS_C34 sans la boite : voulez vous enregistrer ...

      Et ca beug aussi pour la ligne :
      Thisworkbook.sheets ( ...
      0
      1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588 > Linlindou
         
        quel message d'erreur? tu as bien un onglet nommé "Datas S" dans le classeur dans lequel se trouve la macro?
        c'est quoi le fichier dataS_C34? pourquoi devrait-il se fermer sans s'enregistrer?
        0