Macro copier-coller -passer à la ligne suivante

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

mimilendo35

XLDnaute Nouveau
Bonjour,
J'ai réalisé une macro pour copier-coller les valeurs d'une colonne (RESULTATS dans la feuille "Comparaisons") dans une ligne (feuille "Tableau") et j'aimerais passer à la ligne suivante lorsque les valeurs de la colonne sont modifiées et que je réenclenche le bouton macro. Et ainsi de suite ..
Pour l'instant j'en suis là :

Sub Copiercoller()
'
' Copiercoller Macro
'

'
Sheets("Comparaison").Select
Range("F2:F9").Select
Selection.Copy
Sheets("Tableau").Select
Range("A2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=True
Range("A4").Select
End Sub

Je vous envoie également le fichier en zip 🙂 Merciiiii !
 

Pièces jointes

Re : Macro copier-coller -passer à la ligne suivante

Re ;-)

il suffit de remplacer la ligne
Code:
Range("A2").Select
par
Code:
Range("A65536").End(xlUp).Offset(1, 0).Select


tu peux aussi réduire la macro à ceci
Code:
Sub Copiercoller()
'
' Copiercoller Macro
'

'
    Sheets("Comparaison").Range("F2:F9").Copy
    Sheets("Tableau").Activate
    Range("A65536").End(xlUp).Offset(1, 0).Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=True
    
End Sub
 
Re : Macro copier-coller -passer à la ligne suivante

Bonjour, le code suivant vous permet de recopier la plage voulu. Après je ne sais pas comment ou quand vous souhaitez l'activer donc le code peu varier légèrement selon ce que vous voulez faire

Code:
Sub Macro1()
Sheets("Tableau").Cells(Rows.Count, 1).End(xlUp)(2).Resize(1, 8) = Application.Transpose(Sheets("Comparaison").Range("F2:F9"))
End Sub
 
Re : Macro copier-coller -passer à la ligne suivante

ou encore mieux. pour ne pas avoir à selectionner, activer les feuilles
Code:
Sub Copiercoller()
'
' Copiercoller Macro

    With Sheets("Comparaison")
        .Range("F2:F9").Copy
        With Sheets("Tableau").Range("A65536").End(xlUp).Offset(1, 0)
            .PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
             :=False, Transpose:=True
        End With
    End With
End Sub
 
Re : Macro copier-coller -passer à la ligne suivante

Bonjour mimilendo35, vgendron, Cpk,

La macro du bouton :

Code:
Sub Copiercoller()
Dim lig&, c As Range, col As Variant
With Feuil4 'CodeName
  If .FilterMode Then .ShowAllData 'si la feuille est filtrée
  lig = .Range("A" & .Rows.Count).End(xlUp)(2).Row
  .Cells(lig, 1).Resize(, 8) = Application.Transpose([F2:F9])
  For Each c In [E10:E25]
    If c <> "" Then
      col = Application.Match(c, .[1:1], 0)
      If IsNumeric(col) Then .Cells(lig, col) = c(1, 2)
    End If
  Next
End With
End Sub
Dans la feuille "Comparaison" renseignez les cellules F10:F13 puisque E10:E13 le sont...

A+
 
Re : Macro copier-coller -passer à la ligne suivante

Re,

On n'est pas obligé d'utiliser Application.Transpose :

Code:
Sub Copiercoller()
Dim lig&, c As Range, col As Variant
With Feuil4 'CodeName
  If .FilterMode Then .ShowAllData 'si la feuille est filtrée
  lig = .Range("A" & .Rows.Count).End(xlUp)(2).Row
  For Each c In [E2:E25]
    If c <> "" Then
      col = Application.Match(c, .[1:1], 0)
      If IsNumeric(col) Then .Cells(lig, col) = c(1, 2)
    End If
  Next
  .Activate 'facultatif
End With
End Sub
A+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
18
Affichages
237
Réponses
10
Affichages
480
Réponses
2
Affichages
238
Réponses
17
Affichages
934
Retour