Fonction ou code pour coller une plage à la suite

Résolu
gexelpa -  
 gexelpa -
Bonjour,

Je souhaite copier & coller, de façon automatique lors du déclenchement d'une macro, une plage de caractères contenue dans la feuille 1, directement, à la suite de la plage de caractère dans la feuille 2.

Evidemment, les plages ne sont jamais les mêmes, notamment en ce qui concerne le nombre de lignes.
Pour sélectionner et copier la plage de la feuille 1, quelque soit le nombre de ligne, pas de problème, mais pour ce qui est de la coller à la suite de la plage contenue dans la feuille 2, c'est plus compliqué (enfin pour moi :-) )

Merci d'avance pour vos suggestions...

Cdlt,
Gexelpa

2 réponses

  1. via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Bonjour

    Tu peux facilement trouver la 1ere ligne vide d'une colonne avec une instruction telle que
    Ligne = Sheets("Feuil2").Columns(1).Find("*", , , , xlByColumns, xlPrevious).Row + 1

    Ensuite il reste plus qu'à se positionner sur la bonne cellule pour coller la plage

    Cdlmnt
    Via
    1
    1. gexelpa
       
      Merci pour cette réponse via55, mais j'ai peur de ne pas bien avoir saisi la façon de procéder...
      Je viens de tester et la plage de la feuille 1 ne se colle pas à la suite de la plage en feuille 2.
      Voici comment j'ai retranscrit dans VBA:

      Sheets("Feuil1").Select
      Range("A1").Select
      Selection.CurrentRegion.Select
      Selection.Copy
      Sheets("Feuil2").Select
      Ligne = Sheets("Feuil2").Columns(1).Find("*", , , , xlByColumns, xlPrevious).Row + 1
      Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
      :=False, Transpose:=False
      Application.CutCopyMode = False

      Merci d'avance pour votre correctif...

      Cdlt,
      gexelpa
      0
  2. via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Re

    Il faut selectionner la cellule de la bonne ligne avant de coller comme je disais précédemment

    Avant Selection. Paste mettre cette ligne
    Sheets("Feuil2").Range("A" & ligne).Select

    Cdlmnt
    Via
    1
    1. gexelpa
       
      Ok vu via55.
      Merci beaucoup pour ton aide qui me permet d'avancer plus facilement !
      Bonne soirée

      gexelpa.
      0