Macro copier/coller 2 fichiers excel

Slash66 -  
Slash66 Messages postés 3 Statut Membre -
Bonjour,
J'aimerais copier deux plages de données d'un fichier excel vers une autre fichier déjà créé
(afin de ne retenir que les données) avec une macro.
La macro que j'ai fait (je suis débutant) s'exécute jusqu'à un certain point mais me retourne
le message d'erreur suivant après avoir collé la première plage:

Erreur d'exécution '-2147417848 (80010108)':
Erreur Automation

Le code VB est le suivant:

Workbooks("Projection OR.xls").Activate

Sheets("Données").Select
Range("A1:E76").Select
Selection.Copy

Workbooks("Données Clients OR.xls").Activate

Sheets("Données").Select
Range("A1:E76").Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False

Qu'est-ce qui ne fonctionne pas là-dedans ?

Merci beaucoup de me donner un coup de main.
Configuration: Windows XP
Internet Explorer 7.0

4 réponses

  1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 588
     
    Tout me semble correct. Peux-tu donner plus de détails ?
    Comment executes-tu la macro ?
    Nous as-tu montré le code complet de la macro ?
    0
    1. Slash66 Messages postés 3 Statut Membre
       
      Salut yg_be,

      La macro complète ci-dessous:
          Dim Fichier As Range
      
      Dim Chemin As Range

      Sheets("Données").Select
      Range("B1").Select
      Selection.Copy

      Range("B12").Select
      Selection.PasteSpecial Paste:=xlPasteValues

      Set Fichier = Range("B12")
      Set Chemin = Range("A1")

      Workbooks.Open Filename:=Chemin & "Données Clients OR.xls"

      Workbooks("Projection OR.xls").Activate

      Sheets("Données").Select
      Range("A1:E76").Select
      Selection.Copy

      Workbooks("Données Clients OR.xls").Activate

      Sheets("Données").Select
      Range("A1:E76").Select
      -> Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
      False, Transpose:=False

      Workbooks("Projection OR.xls").Activate

      Sheets("Ajustements").Select
      Range("D6:S95").Select
      Selection.Copy

      Workbooks("Données Clients OR.xls").Activate

      Sheets("Ajustements").Select
      Range("D6:S95").Select
      Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
      False, Transpose:=False

      ActiveWorkbook.SaveAs Filename:=Chemin & Fichier

      ActiveWorkbook.Close
      
      

      La macro est actionnée par un bouton.

      Je suis allé voir un lien de support Microsoft mais je ne comprends pas bien ce que tout cela veut dire:

      https://support.microsoft.com/fr-fr/help/270589#top

      Merci de votre aide précieuse
      0
  2. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 588
     
    Cela se plante à quelle ligne ?
    0
    1. Slash66 Messages postés 3 Statut Membre
       
      Au second PasteSpecial (j'ai mis une petite flèche)
      0
  3. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    Essayes comme ceci tu devrais fonctionner
    Range("A1").PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
    False, Transpose:=False 
    0
  4. Slash66 Messages postés 3 Statut Membre
     
    Ça ne fonctionne toujours pas, même code d'erreur. J'abandonne cette macro, je vais tenter autrement.
    Merci quand même pour votre aide. J'apprécie vraiment
    0