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 :

En VBA, copier des cellules et les coller dans un nouveau classeur [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Février 2013
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2013
    Messages : 4
    Points : 4
    Points
    4
    Par défaut En VBA, copier des cellules et les coller dans un nouveau classeur
    Bonjour ,

    Je débute en VBA et je n'arrive pas à copier des cellules d'un classeur vers un nouveau classeur. ça plante à la dernière ligne " selection paste" .
    tout marche, le nouveau classeur s'ouvre bien, la cellule "A1" est selectionnée, mais ça veut pas "coller"


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Private Sub CommandButton1_Click()
     
    Range("A1:E5").Select
    Selection.Copy
     
    Application.SheetsInNewWorkbook = 1
    Application.Workbooks.Add
     
    Range("A1").Select
     
    Selection.Paste
     
    End Sub
    je pense que la solution doit être facile pour vous.
    Merci pour votre aide.

  2. #2
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Février 2013
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2013
    Messages : 4
    Points : 4
    Points
    4
    Par défaut
    Personne n'a répondu, alors j'ai cherché testé et trouvé la soluce.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Private Sub CommandButton1_Click()
    With ThisWorkbook.Worksheets("Feuil2")
         .Activate
     
         Range("A1:B9").Select ' on selectionne
        Selection.Copy         ' on copie
       Workbooks.Add           ' on ouvre un classeur
       Range("c1").Select      ' on choisit l'endroit ou l'on va coller notre selection
        ActiveSheet.Paste      ' on colle
       .Activate               ' on revient au classeur d'origine
    End With
    End Sub

  3. #3
    Membre régulier
    Homme Profil pro
    Retraité
    Inscrit en
    Février 2012
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Février 2012
    Messages : 75
    Points : 110
    Points
    110
    Par défaut
    Citation Envoyé par Cgoldy Voir le message
    Bonjour ,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Private Sub CommandButton1_Click()
     
    Range("A1:E5").Select
    Selection.Copy
     
    Application.SheetsInNewWorkbook = 1
    Application.Workbooks.Add
     
    Range("A1").Select
     
    Selection.Paste
     
    End Sub
    Bonsoir,

    Sugestion évitez les Select

    Voici un code testé

    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
    Sub TestCopie()
     
        Dim WsScr As Worksheet, WsDest As Worksheet, MaPlage As Range
     
        Set WsScr = Worksheets(ActiveSheet.Name) ' a adapter a vos besoins
        Set MaPlage = WsScr.Range("A1:E5")
     
        Application.SheetsInNewWorkbook = 1
        Application.Workbooks.Add
     
        Set WsDest = Worksheets(ActiveSheet.Name)
     
        MaPlage.Copy WsDest.Range("A1")
     
        ' Libérer mémoire -------------------------------------------------
        Set WsScr = Nothing: Set WsDest = Nothing: Set MaPlage = Nothing 
    End Sub
    __________________
    Cordialement
    Albert

  4. #4
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Février 2013
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2013
    Messages : 4
    Points : 4
    Points
    4
    Par défaut
    Merci Sogestion !!

    Votre code est plus "pro" que le mien c'est sur !!

    je vais m'en inspirer pour la suite
    Merci encore

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

Discussions similaires

  1. [LibreOffice][Tableur] Basic - Copier des colonnes et les coller dans un autre classeur
    Par ancel17 dans le forum OpenOffice & LibreOffice
    Réponses: 5
    Dernier message: 21/03/2014, 11h45
  2. [XL-2010] Copier des Cellules en les incrémentant
    Par khelilo dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 10/12/2012, 14h41
  3. [XL-2010] Copier des cellules ( sans les formules)
    Par PhilGood11 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 14/02/2012, 15h21
  4. copier des cellules d'une feuille dans une autres sous condition
    Par olivertwist dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 16/05/2007, 10h42
  5. [VBA-E] Copier des cellules et les coller ?
    Par Trooper2 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 15/01/2007, 17h29

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