Macro : copier une ligne dans la première ligne vide d'une autre feuille

  • Initiateur de la discussion Initiateur de la discussion chris6999
  • Date de début Date de début

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 !

chris6999

XLDnaute Impliqué
Bonjour le FORUM

Encore un cas de copier coller entre 2 feuilles qui me pose soucis (mais je ne désespère pas d'y arriver un jour toute seule...)

J'ai un fichier avec 2 feuilles:
Je travaille à partir de la feuille Liste où je souhaiterais à partir d'un double clic dans la colonne A que ma macro
-copie la ligne active et la colle dans la feuille "historique des dossiers" dans la première ligne vide (colonne A vide à partir de la ligne 11).
-Toujours dans la feuille "historique des dossiers" positionne dans la colonne A de la ligne copiée la date du jour
-Revient à la feuille liste
-Incrémente la valeur 1 dans la cellule où a été réalisé le double clic

Cela me paraissait pas si compliqué mais j'ai des bugs à l'application.

Mon code bricolé :
'sélectionne la ligne du double clic puis la copie
Range("A" & ActiveCell.Row).EntireRow.Select
Selection.Copy
'copier dans la première cellule vide de la feuille Historique
'Coller les données sur la première ligne vide
Sheets("Historique des dossiers").Activate
With ActiveSheets
Cells(Range("A5000").End(xlUp).Row + 1, 1).Activate
'Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
'copie la ligne
ActiveSheet.Paste
End With
Sheets("Historique des dossiers").Activate

Merci d'avance pour votre aide
Je mets un fichier test en PJ
 

Pièces jointes

Re : Macro : copier une ligne dans la première ligne vide d'une autre feuille

Bonjour,

apriori :

V1 on colle tout (formules, format...)
Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
 With Worksheets("Historique des dossiers")
 Target.EntireRow.Copy .Range("A" & .Range("A" & Rows.Count).End(xlUp).Row + 1)
 End With
 Application.CutCopyMode = False
 Sheets("Historique des dossiers").Activate
End Sub

V2 on ne colle que les valeurs
Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
 With Worksheets("Historique des dossiers")
 Target.EntireRow.Copy
 .Range("A" & .Range("A" & Rows.Count).End(xlUp).Row + 1).PasteSpecial Paste:=xlPasteValues
 End With
 Application.CutCopyMode = False
 Sheets("Historique des dossiers").Activate
End Sub

A+
 
Re : Macro : copier une ligne dans la première ligne vide d'une autre feuille

Génial
Le code est propre et fonctionne à merveille en un mot magnifique.

Merci encore


Bonjour,

apriori :

V1 on colle tout (formules, format...)
Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
 With Worksheets("Historique des dossiers")
 Target.EntireRow.Copy .Range("A" & .Range("A" & Rows.Count).End(xlUp).Row + 1)
 End With
 Application.CutCopyMode = False
 Sheets("Historique des dossiers").Activate
End Sub

V2 on ne colle que les valeurs
Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
 With Worksheets("Historique des dossiers")
 Target.EntireRow.Copy
 .Range("A" & .Range("A" & Rows.Count).End(xlUp).Row + 1).PasteSpecial Paste:=xlPasteValues
 End With
 Application.CutCopyMode = False
 Sheets("Historique des dossiers").Activate
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

Retour