Application d'une macro sur plusieurs lignes [Résolu]

Messages postés
3
Date d'inscription
dimanche 10 février 2019
Statut
Membre
Dernière intervention
10 février 2019
-
Bonjour à tous,

Après moultes recherches sur le forum, j'ai du mal à trouver le cas qui s'applique à ce que je recherche.
J'ai un catalogue de pièces sur un document excel et je voudrais faire une copie d'une ligne vers une autre feuille via un double-clic sur la colonne A afin d'obtenir une liste de souhait.

J'ai réussi à obtenir ce que je veux pour une ligne en créant une macro en exemple sur la ligne 16, mais je sens que je ne pars pas dans la bonne direction pour pouvoir étendre cela à environ 15 000 lignes.

Voici ce que j'ai créé jusque là :

Dans module 1 :

Sub Copie_ligne()
'
' Copie_ligne Macro
' Copie de la ligne
'

'
Range("Z16:AF16").Select
Selection.Copy
Sheets("Feuil2").Select
Rows("2:2").Select
Selection.Insert Shift:=xlDown
Sheets("Feuil1").Select
Application.CutCopyMode = False
Range("B16").Select
End Sub
--------------------------------------
Dans Feuil1 (code) :

Sub double_clic()
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Target, Range("A16")) Is Nothing Then
Application.Run ("Copie_ligne")
End If
End Sub


Je préfère prévenir que je débute dans les macros.
J'espère que vous pourrez m'aider. Merci par avance
Afficher la suite 

2 réponses

Meilleure réponse
Messages postés
8743
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
19 octobre 2019
436
1
Merci
bonjour, tu souhaites pouvoir faire la même chose en double cliquant sur n'importe quelle cellule de la colonne A?
suggestion:
Sub Copie_ligne(cel As Range)
cel.Offset(0, 25).Resize(1, 7).Copy
Sheets("Feuil2").Rows("2:2").Insert Shift:=xlDown
Application.CutCopyMode = False
cel.Offset(1, 0).Select
End Sub

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.count = 1 And Target.Column = 1 Then
    Call Copie_ligne(Target)
End If
End Sub

Dire « Merci » 1

Heureux de vous avoir aidé ! Vous nous appréciez ? Donnez votre avis sur nous ! Evaluez CommentCaMarche

CCM 64061 internautes nous ont dit merci ce mois-ci

axelody
Messages postés
3
Date d'inscription
dimanche 10 février 2019
Statut
Membre
Dernière intervention
10 février 2019
-
Parfait ton code !
est-ce que la macro prend toute la colonne A de la feuille 1?

Merci beaucoup !
yg_be
Messages postés
8743
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
19 octobre 2019
436 > axelody
Messages postés
3
Date d'inscription
dimanche 10 février 2019
Statut
Membre
Dernière intervention
10 février 2019
-
oui, toute la colonne A de la feuille où tu mets le code Worksheet_BeforeDoubleClick.
Commenter la réponse de yg_be
Messages postés
3
Date d'inscription
dimanche 10 février 2019
Statut
Membre
Dernière intervention
10 février 2019
0
Merci
Bonjour yg_be

C'est exactement ca.

Pour être plus précis, je voudrais que quand je double clic sur la cellule A d'une ligne, ca me copie la ligne en question vers une autre feuille.

exemples :
double-clic en A1 => copie de la ligne 1 vers feuille 2
double-clic en A18 => copie de la ligne 18 vers feuille 2
Commenter la réponse de axelody