IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Copier des plages d'un classeur a un autre [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Membre actif
    Inscrit en
    Janvier 2003
    Messages
    604
    Détails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 604
    Points : 247
    Points
    247
    Par défaut Copier des plages d'un classeur a un autre
    Bonjour,
    Je souhaite copier des cellules d'un classeur à un autre par
    plage en VBA
    J'ouvre une liste de fichier, puis pour chaque fichier ouvert,
    je prends la plage de cellule courante et je veux les copier
    entierement. Mais le code que j'ai fait fait ne copie que
    du texte : objWorkbookDepart.Activate et pas les plages de cellule.
    D'avance merci de votre aide.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    For j = 1 To limiteFich
        Set objWorkbookDepart = Application.Workbooks.Open(TableauFich(j))
        A = objWorkbookDepart.Name
        PosTiret = InStr(A, "-")
        DebutChaine = Mid(A, 1, PosTiret - 2)
        Onglet = DebutChaine & " " & MoisEnCours & AnneeEnCours
        ' nombre de ligne
        objWorkbookDepart.Activate
        i = 1
        While Worksheets(Onglet).Range("A" & CStr(i)) <> ""
            i = i + 1
        Wend
        objWorkbookDepart.Activate
        Worksheets(Onglet).Select
        Worksheets(Onglet).Copy
        MsgBox lefichierintermediaire.Name
     
     
        lefichierintermediaire.Activate
        Worksheets("Sheet1").Range("A" & CStr(i+1)).Activate
        Worksheets("Sheet1").Paste
        Next j

  2. #2
    Membre habitué Avatar de Ania
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    155
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 155
    Points : 134
    Points
    134
    Par défaut
    D'apres ce que j'ai comprisde ton code tu souhaites copier un feuille entière.

    Voici 2 bout de codes qui te permette de copier une feuille soit :
    dans un nouveau classeur
    soit dans un classeur déja defini.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Sub CopierUneFeuilleDansUnNouveauClasseur()
     
        Sheets("Chantiers en cours").Select
        Sheets("Chantiers en cours").Copy
     
    End Sub
     
    Sub CopierUneFeuilleDansUnClasseurDetermine()
     
        Sheets("Chantiers en cours").Select
        Sheets("Chantiers en cours").Copy After:=Workbooks("Classeur1").Sheets(1)
     
    End Sub
    Par contre si tu souhaites copier un ensemble de cellule, il te faut d'bord selectionné une plage de cellule

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    'Selection de la plage à copier
     
      Workbooks("Classeur1").Worksheets(onglet).Range("A1:Q104").Copy 
     
      'Activation du classeur cible
      ClasseurCible.Worksheets("Données Pièces").Activate
     
      'Sélection de la cellule de debut de copie
      [A1].Select
     
      'Collage de la plage de cellule
      Selection.Paste

  3. #3
    Membre actif
    Inscrit en
    Janvier 2003
    Messages
    604
    Détails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 604
    Points : 247
    Points
    247
    Par défaut
    Merci, en gros ca a marché.
    Mais j'ai du changé le Selection.Paste (qui plantait) en ActiveSheet.Paste

  4. #4
    Membre à l'essai
    Homme Profil pro
    retraité
    Inscrit en
    Mars 2018
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2018
    Messages : 20
    Points : 11
    Points
    11
    Par défaut
    Bonjour,

    Pour moi aussi Selection.Paste donne une erreur
    Ok avec ActiveSheet.Paste

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. vba excel:copier le contenu d'une feuil dans une autre feuil
    Par yucf_miagiste dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 05/09/2007, 19h53
  2. VBA EXCEL - Copier des ligne vers un autre calseur.
    Par patine31 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 17/03/2007, 12h46
  3. [VBA-Excel]Copier des cellules vers un autre classeur
    Par Tartenpion dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 04/10/2006, 18h18
  4. [VBA-Excel] copier des lignes de données d'un fichier à un autre
    Par ash_rmy dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 31/07/2006, 10h17
  5. [VBA EXCEL] Copier des lignes
    Par ben7777 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 28/07/2006, 18h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo