Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

programme selectionner lignes en fonction de cellules actives

  • Initiateur de la discussion Initiateur de la discussion Stéphanie.dps
  • 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 !

S

Stéphanie.dps

Guest
Bonjour,

Je souhaiterais trouver un bout de programme qui me permettrais de copier les lignes entières (par exemple 1 :3)en fonction des cellules que j'aurais selectionné (active cells)(Par exemple : a1 : a3)

MErci de votre aide précieuse
 
Re : programme selectionner lignes en fonction de cellules actives

Ca ne marche pas a priori.

Si je selectionne par exemple c2 et c3 je voudrais qu'il me copie les lignes 2 et 3...Pour l'instant il ne me copie que ma ligne 2 (lignes de la 1ere cellule)

Est ce que vous avez une idée?
 
Re : programme selectionner lignes en fonction de cellules actives

Re,

Si Selection.EntireRow.Copy ne copie pas l'ensemble des lignes de la sélection dans le presse-papier alors, moi, j'arrête VBA 😱

Aucune idée, non.

Cordialement,
 
Re : programme selectionner lignes en fonction de cellules actives

Alors vu ma connaissance très limitée dans VBA, et le nombre de message interressant que vous laisser, je vous fais entièrement confiance et je vous joins mon fichier avec la macro que j'ai ecrit si vous pouviez y jeter un coup d'oeil....

Par avance merci de votre aide!!!!
Stéphanie

Sub test()

Sheets("Feuil1").Select
Range(Cells(ActiveCell.Row, "a"), Cells(ActiveCell.Row, "a")).Select
x = ActiveCell.Address

'Selectionne les lignes à copier et les coller sur la feuille modèle "FICHE"
Range(Cells(ActiveCell.Row, "b"), Cells(ActiveCell.Row, "d")).Select

Selection.Copy
Sheets("Feuil2").Select
Range("a1").Select


Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Calculate



End Sub
 

Pièces jointes

Re : programme selectionner lignes en fonction de cellules actives

Re,

Je n'ai pas ouvert ton classeur mais j'ai beau regarder le code que tu présentes dans tous les sens, je n'y vois pas l'expression :
Code:
[SIZE=2]Selection.EntireRow.Copy[/SIZE]
J'imagine qu'en modifiant ta ligne :
Code:
[SIZE=2]Selection.Copy[/SIZE]
ça répondrait peut-être à ton interrogation... 😉

Cordialement,
 
Re : programme selectionner lignes en fonction de cellules actives

Re,

J'avoue aussi que je n'ai pas compris les "a", "b" et "d"... si tu m'en dis un peu plus, je peux surement te proposer un code un peu plus optimisé.

Cordialement,
 
Re : programme selectionner lignes en fonction de cellules actives

Bonjour Stéphanie, myDearFriend!



Est-ce cela que tu veux faire?

Code:
Sub Macro1()
Selection.Resize(Selection.Rows.Count, _
Selection.Columns.Count).EntireRow.Copy
End Sub

Tes 256 colonnes contiennent toujours des données?
 
Dernière édition:
Re : programme selectionner lignes en fonction de cellules actives

Non, Didier, stp! n'arrêtes pas le vba! 😱

Stéphanie,

'Selectionne les lignes à copier et les coller sur la feuille modèle "FICHE"
Range(Cells(ActiveCell.Row, "b"), Cells(ActiveCell.Row, "d")).Select
Avec ce code, si la cellule active et en ligne 1 tu sélectionne B1 : D1.

Toutes tes cellules sont sur la même ligne, c'est normal que tu ne copie que cette ligne.....
Parce que sinon, le code de Didier est ok. 🙂
 
Re : programme selectionner lignes en fonction de cellules actives

1/ Effectivement j'ai collé le mauvais programme sur le forum donc maintenant ça colle bien la ligne entière mais ça ne fait pas ce que je voudrais : car j'ai beau selectionner 2cellules ça me colle que la ligne de la première cellule.

En fait je sais pas trop à quoi ça correspond car j'ai essayé d'adapter un code que j'ai trouvé : en gros je lui dit :
que le cellules actives (cellules selectionnées) sont dans la colonne A
Et qu'il faut qu'il colonne la ligne de la colonne b à d...

Bonjour Stapple,
Je ne comprends pas se que ça fait le programme proposé, désolée je ne suis aps très douée
 
Re : programme selectionner lignes en fonction de cellules actives

Re


La macro fait juste ce qu'on lui demande 😉

Sub Macro1()
Selection.Resize(Selection.Rows.Count, _
Selection.Columns.Count).EntireRow.Copy
End Sub
Ex : la selection est E7:E9

si tu appelles la macro

la plage de cellules A7:IV9 est sélectionnée et copiée
(ce qui correponds à copier les lignes 7, 8 et 9)

Ensuite il suffit de lsectionne la cellule (en colonne A) de destination et de faire coller.

J'espère que mes explications furent claires.
 
Re : programme selectionner lignes en fonction de cellules actives

Je suis content que tu aies trouvé réponse à ta question Stéphanie.dps 🙂

Cela dit, comme j'aime bien comprendre, je remercie Stapple1600 de bien vouloir m'expliquer l'intérêt du Resize dans :
Code:
 Selection.Resize(Selection.Rows.Count, _
Selection.Columns.Count).EntireRow.Copy
Faire un Resize pour redimensionner un range, ça je connais. Mais redimensionner un range à sa propre dimension d'origine, là, j'avoue que je reste perplexe quant à l'utilité d'un tel code... (quelle différence avec Selection.EntireRow.Copy ?)

Merci de tes éclaircissements Stapple.

Cordialement,
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
4
Affichages
216
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…