VBA, Copier, coller cell puis itération

nicoduv2005 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   -  
ccm81 Messages postés 11033 Statut Membre -
Bonjour,

Je souhaiterais faire un copier/coller d'une cellule vers une autre feuille à l'aide d'un bouton mais à chaque appui du bouton, je souhaite changer de ligne le collage.

Ex:
copier/coller de A1 feuil1 en A1 feuil2 lors de l'appui du bouton
Puis nouvelle appui du bouton = copier coller en A2 feuil2 et ainsi de suite

j'arrive a copier/coller mais je n'arrive pas à inclure la boucle à l'intérieur (pour changer de ligne)
En éspérant etre assez claire.
Merci d'avance pour votre aide, je cherche depuis de nombreux jours!!!

7 réponses

  1. ccm81 Messages postés 11033 Statut Membre 2 434
     
    bonjour à tous

    ceci copie A1 de la feulle 1 dans la feuille2 colonne A sur la première ligne vide

    Const F1 = "Feuil1" 
    Const F2 = "Feuil2" 
    
    Private Sub CommandButton1_Click() 
    Dim lifin As Long, v 
    v = Sheets(F1).Range("A1").Value 
    lifin = Sheets(F2).Range("A" & Rows.Count).End(xlUp).Row 
    If Sheets(F2).Range("A1") <> "" Then lifin = lifin + 1 
    Sheets(F2).Range("A" & lifin).Value = v 
    End Sub

    bonne suite
    2
    1. nicoduv2005 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
       
      Merci beaucoup, ça fonctionne niquel. je suis vraiment épaté et en plus ca ne fait rien lorsqu'il y a rien ds la cellule.
      C'est top cool, je vais maintenant le reporté a d'autres cellules
      encore merci
      0
    2. ccm81 Messages postés 11033 Statut Membre 2 434
       
      et en plus ca ne fait rien lorsqu'il y a rien ds la cellule.
      si mais comme ça copie "" , la cellule de F2 reste disponible
      RQ. on pourrait effectivement ajouter un test sur A1 'de F1) e ne rien faire si A1 est vide

      bonne suite
      0
  2. G_33
     
    Bonjour,

    pourquoi copier coller une ligne après l'autre ??
    Pourquoi avec un bouton ?
    Pourquoi pas avec une formule du genre
    dans A1 de la feuille 2 faire : =Feuil1:A1

    cordialement
    0
  3. nicoduv2005 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
     
    Car c'est pour une sauvegarde de donnée, a chaque nouvelle entrée j'ai besoin d'enregistrer cette valeur et d'y avoir accès par la suite. C'est une sorte de sauvegarde que je peux réutiliser ensuite. j'ai besoin de renvoyer (plusieurs cellules).
    et le collage simple ne suffit pas car j'ai besoin d'entrer mes données toujours dans le même tableau en feuil1 et je veux une sauvegarde de plusieurs cellules ds une autre feuille (feuil2 en l'occurence)!

    merci
    0
  4. G_33
     
    essaie ce code dans le bouton

    ça copie toutes les cellule dans la feuille 2
    Private Sub CommandButton1_Click()
    For lig = 1 To Range("a65536").End(xlUp).Row
      valeur = Sheets("Feuil1").Cells(lig, 1).Value
      Sheets("Feuil2").Cells(lig, 1).Value = valeur
    Next lig
    End Sub
    
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. G_33
     
    Ou cela pour la cellule active de la colonne A de la feuille 1
    
    Private Sub CommandButton1_Click()
    maligne = ActiveCell.Row
    mavaleur = ActiveCell.Value
    Sheets("feuil2").Cells(maligne, 1).Value = mavaleur
    End Sub
    
    
    0
  7. nicoduv2005 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
     
    Merci à vous deux, la solution de ccm81 fonctionne parfaitement. je n'ais pas réussi a faire fonctionner l'autre, mais encore merci pour vos réponses et la rapidité!!!
    0
  8. G_33
     
    alors il faut déclarer la variable "lig"
    Dim lig As Integer
    
    Private Sub CommandButton1_Click()
    For lig = 2 To Range("a65536").End(xlUp).Row
      valeur = Sheets("Feuil1").Cells(lig, 1).Value
      Sheets("Feuil2").Cells(lig, 1).Value = valeur
    Next lig
    End Sub
    

    en espérant que ça fonctionne
    0