Macri copier coller plage en valeurs fans autre feuille

Cbiennils -  
 Cbiennils -
Bonjour,

Je cherche à copier une plage qui ne sera pas fixe et peut donc s'étendre et la copier en valeurs dans un tableau récapitulatif d'une autre feuille dans la première case vide, donc à la suite

J'ai élaboré cette macro mais n'ai pas moyen de la tester. De plus dire que je débute en vba serait un doux euphémisme :)
Pouvez-vous me dire si ça vous paraît ok SVP

Par avance merci pour votre aide

Sub copier_coller_plage_dans_recap()

Sheets("VERIF").Select

Range("H209:J209").Select
Range(Selection, Selection.End(xlDown)).Select

Selection.Copy
PasteSpecial Paste:=xlPasteValues
Sheets("RECAP").Cells(65535, 1).End(xlUp)(2)

End Sub

2 réponses

  1. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    Bonjour

    On a tous débuter...

    dans ta macro, avant de faire ton "pastespecial", tu dois d'abord aller à la cellule où tu veux coller et ensuite faire ton collage

    Sheets("RECAP").Cells(65535, 1).End(xlUp)(2).select
    PasteSpecial Paste:=xlPasteValues


    mais en vba on évite les copy-paste et autre select pour copier des valeurs...

    de la lecture pour apprendre:
    https://silkyroad.developpez.com/VBA/DebuterMacros/
    https://bidou.developpez.com/article/VBA/

    0
    1. Cbiennils
       
      En fait je ne pense pas avoir besoin de coller en valeurs finalement le résultat est le même
      0
  2. Cbiennils
     
    Bonjour michel_m

    Merci pour ta réponse et pour tes liens.
    J'avais déjà lu les cours vba du site : https://www.excel-pratique.com

    C'est super je vais pouvoir progresser davantage.

    Le code complet serait donc :

    Sub copier_coller_plage_dans_recap()

    Sheets("VERIF").Select

    Range("H209:J209").Select
    Range(Selection, Selection.End(xlDown)).Select

    Selection.Copy
    Sheets("RECAP").Cells(65535, 1).End(xlUp)(2).select
    PasteSpecial Paste:=xlPasteValues

    End Sub

    Peux-tu me confirmer stp ?
    Je comprends mon erreur j'ai fait le truc à l'envers en fait tout en oubliant de sélectionner.

    Je souhaiterais également copier-coller 2 cellules indépendantes, dans ce cas je pense pouvoir utiliser la fonction with ou bien ?
    0