Copier à la suite

Yellowmoon -  
michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je souhaite faire une chose certainement toute bête : créer une macro qui prend une cellule dans une feuille et qui la copie dans une autre feuille mais à la suite de ce qui a déjà été copié (et pas en écrasant ce qui y est déjà).
Merci !

4 réponses

  1. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    Bonjour
    cellule dans une feuille
    Quelle cellule dans quelle feuille ?
    à la suite de ce qui a déjà été copié
    A la suite de quoi: à droite, à gauche, en dessous ?
    quelle cellule départ dans quelle feuille ?

    CCM ne fournit pas de boule de cristal aux contributeurs
    0
    1. Yellowmoon
       
      Bonjour Michel
      En fait, je voudrais copier le contenu d'une cellule qui est dans un classeur vers un autre classeur avec une macro.
      Par exemple la cellule 1 de la colonne A du classeur 1 vers la cellule 1 de la colonne A du classeur 2.
      Mais ce que j'aimerais (et que je n'arrive pas à faire!) c'est que ma macro n'écrase pas ce qu'il y a dans cette cellule de destination mais l'inscrive à la suite en dessous au fur et à mesure.
      Ça ne doit pas être trop complexe mais comme je débute ..
      Merci !
      0
  2. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    Ok,

    Quand tu va coller dans classeur2 feuille1
    met une ent^te en A1 (un espace suffit)
    la suite de ton code
    Dim cellule As Range
    'dans la colonne A trouve la cellule avec quoi:=vide, après:= A1
    Set cellule = Columns("A").Find(what:="", after:=Range("A1"))
    'active la cellule (ou colle ou...)
    cellule.Select


    La première cellule en provenance de classeur 1 sera en A2, puis A3 etc
     Michel
    0
    1. Yellowmoon
       
      Je suis pas un expert, ce sont mes premières macros, mais je vais essayer.
      Encore merci !
      0
    2. yellowmoon
       
      Bonjour Michel
      Puis-je encore abuser ? -))
      Dans le code ci dessous pour quelle raison ma cellule M16 dans le résultat final n'apparaît pas dans la cellule B25 ..

      Range("M16").Select
      Application.CutCopyMode = False
      Selection.Copy
      Range("B25").Select
      ActiveSheet.Paste
      Application.CutCopyMode = False
      Selection.Borders(xlDiagonalDown).LineStyle = xlNone
      Selection.Borders(xlDiagonalUp).LineStyle = xlNone
      Selection.Borders(xlEdgeLeft).LineStyle = xlNone
      Selection.Borders(xlEdgeTop).LineStyle = xlNone
      Selection.Borders(xlEdgeBottom).LineStyle = xlNone
      Selection.Borders(xlEdgeRight).LineStyle = xlNone
      Selection.Borders(xlInsideVertical).LineStyle = xlNone
      Selection.Borders(xlInsideHorizontal).LineStyle = xlNone
      Range("M16").Select
      Application.CutCopyMode = False
      Selection.Copy
      Windows("Classeur2").Activate
      Range("A2").Select
      Dim cellule As Range
      Set cellule = Columns("A").Find(what:="", after:=Range("A1"))
      cellule.Select
      ActiveSheet.Paste
      End Sub
      0
  3. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    Nonjour,

    copies tu que les valeurs des cellules ?

    Je repasse en fin d'après midi
    0
    1. yellowmoon
       
      Oui juste les valeurs ..
      0
  4. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    re,
    en supposant que les cellules M16 et B25 soient dans la même feuille

    Option Explicit
    '-----------------
    Sub ccm()
    Dim Valeur
    Dim Cellule As Range

    With ActiveSheet
    Valeur = Range("M16")
    With Range("B25")
    .Value = Valeur
    .Borders.Weight = xlThin
    End With
    End With
    Windows("Classeur2").Activate
    With Sheets(1)
    Set Cellule = .Columns("A").Find(what:="", after:=.Range("A1"))
    Cellule = Valeur
    End With
    End Sub


    Quel type de données se trouve dans dans M16: texte, nombre, monétaire,date, heure...

     Michel
    0