copier-coller toutes les X lignes.

  • Initiateur de la discussion Initiateur de la discussion Malkav
  • 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 !

M

Malkav

Guest
Salut à tous,

Je viens vous poser une petite question car je bloque un petit peu.

Mon but est récupérer les matricules, nom et prénom d'un fichier d'extraction, onglet "extract" et de les coller dans un autre onglet "tableau recap". (voir excel joint)

Je ne vois pas trop le moyen compte tenu de mes connaissances. il me faudrait juste la manip de copier coller, car je pense être capable de faire la boucle...

auriez vous une idée???

Merci beaucoup la communauté 🙂
 

Pièces jointes

Re : copier-coller toutes les X lignes.

Bonjour,

si ta demande est juste de copier les données de "extract" et de les coller à la suite de l'onglet tableau recap, alors je ferais cela :

Code:
sheets("extract").activate
sheets("extract").range("a1").select
Selection.CurrentRegion.Select
Selection.Copy

sheets("tableau recap").Range("A65536").End(xlUp).Offset(1, 0).Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:= _
xlNone, SkipBlanks:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
 
Re : copier-coller toutes les X lignes.

En fait le but est juste de récupérer une seule fois le matricule, nom, et prénom et le copier dans "tableau recap".

J'ai 5 lignes TOTO dans l'onglet "extract" et je veux juste le coller une fois dans "taleau recap", et faire pareil pour chaque personne...

Et le code ne marche pas, j'ai un debug sur la ligne
"sheets("tableau recap").Range("A65536").End(xlUp).Offset(1, 0).Select"
 
Re : copier-coller toutes les X lignes.

yep

pour le bug, normal j'ai oublié une ligne il faut réactiver l'onglet où tu vas coller les données :
Code:
Sheets("extract").Activate
Sheets("extract").Range("a1").Select
Selection.CurrentRegion.Select
Selection.Copy

Sheets("tableau recap").Activate
Sheets("tableau recap").Range("A65536").End(xlUp).Offset(1, 0).Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:= _
xlNone, SkipBlanks:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
 
Re : copier-coller toutes les X lignes.

En fait ton code copie l’intégralité de la liste sur le premier onglet "extract",dans mon cas j'ai juste besoin des 3 premières colonnes et uniquement d'une ligne par "entité" (entité = matricule, nom, prénom).

copier les 3 premières colonne de la ligne 2 de "extract", la coller sur la ligne 2 de "tableau recap"
copier les 3 premières colonne de la ligne 7 de "extract", la coller sur la ligne 3 de "tableau recap"
copier les 3 premières colonne de la ligne 12 de "extract", la coller sur la ligne 4 de "tableau recap"

en sachant que le nombre de ligne a "sauter" est tjs le même.
 
Re : copier-coller toutes les X lignes.

Un poil plus long, mais bon, tant que la solution est là, soyons pragmatique !

Code:
    ' Onglet tempo
Set NewFeuil = Worksheets.Add(Sheets(1))
NewFeuil.Name = "temp"

Sheets("extract").Activate
Sheets("extract").Range("a1").Select
Selection.CurrentRegion.Select
Selection.Copy

Sheets("temp").Activate
Sheets("temp").Range("A65536").End(xlUp).Offset(0, 0).Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:= _
xlNone, SkipBlanks:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False

    ' Shooter les doublons
Sheets("temp").Activate
Sheets("temp").Range("a1").Select
Selection.CurrentRegion.Select
Selection.RemoveDuplicates Columns:=1, Header:=xlYes

    ' Coller les résultats
Sheets("temp").Activate
ActiveSheet.Rows("1:1").Select
Selection.Delete Shift:=xlUp

Sheets("temp").Activate
Sheets("temp").Range("a1").Select
Selection.CurrentRegion.Select
Selection.Copy

Sheets("tableau recap").Activate
Sheets("tableau recap").Range("A65536").End(xlUp).Offset(0, 0).Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:= _
xlNone, SkipBlanks:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False

    ' Supprimer onglet temp
Application.DisplayAlerts = False
Worksheets("temp").Delete
Application.DisplayAlerts = True

Cela correspond-il mieux à ce que tu veux ?
 
Re : copier-coller toutes les X lignes.

Un poil plus long, mais bon, tant que la solution est là, soyons pragmatique !

Code:
    ' Onglet tempo
Set NewFeuil = Worksheets.Add(Sheets(1))
NewFeuil.Name = "temp"

Sheets("extract").Activate
Sheets("extract").Range("a1").Select
Selection.CurrentRegion.Select
Selection.Copy

Sheets("temp").Activate
Sheets("temp").Range("A65536").End(xlUp).Offset(0, 0).Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:= _
xlNone, SkipBlanks:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False

    ' Shooter les doublons
Sheets("temp").Activate
Sheets("temp").Range("a1").Select
Selection.CurrentRegion.Select
Selection.RemoveDuplicates Columns:=1, Header:=xlYes

    ' Coller les résultats
Sheets("temp").Activate
ActiveSheet.Rows("1:1").Select
Selection.Delete Shift:=xlUp

Sheets("temp").Activate
Sheets("temp").Range("a1").Select
Selection.CurrentRegion.Select
Selection.Copy

Sheets("tableau recap").Activate
Sheets("tableau recap").Range("A65536").End(xlUp).Offset(0, 0).Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:= _
xlNone, SkipBlanks:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False

    ' Supprimer onglet temp
Application.DisplayAlerts = False
Worksheets("temp").Delete
Application.DisplayAlerts = True

Cela correspond-il mieux à ce que tu veux ?


Long mais efficace, je vais tester ca pour passer a la phase deux de mon casse tête 🙂
 
Re : copier-coller toutes les X lignes.

Re,

ou avec ceci pour effacer les données de la feuille recap avant de coller les données de la feuille 1

Code:
Sub Macro1()
Application.ScreenUpdating = False
Sheets("tableau recap").Range("A2:C" & Range("A65535").End(xlUp).Row).ClearContents
    Range("A2:C" & Range("A65535").End(xlUp).Row).Copy
    Sheets("tableau recap").Select
    Range("A2").Select
    ActiveSheet.Paste
    ActiveSheet.Range("$A$1:$C$" & Range("A65535").End(xlUp).Row).RemoveDuplicates Columns:=1, Header:=xlYes
    [A1].Select
Application.ScreenUpdating = True
End Sub

à+
Philippe
 
Re : copier-coller toutes les X lignes.

Re,

ou avec ceci pour effacer les données de la feuille recap avant de coller les données de la feuille 1

Code:
Sub Macro1()
Application.ScreenUpdating = False
Sheets("tableau recap").Range("A2:C" & Range("A65535").End(xlUp).Row).ClearContents
    Range("A2:C" & Range("A65535").End(xlUp).Row).Copy
    Sheets("tableau recap").Select
    Range("A2").Select
    ActiveSheet.Paste
    ActiveSheet.Range("$A$1:$C$" & Range("A65535").End(xlUp).Row).RemoveDuplicates Columns:=1, Header:=xlYes
    [A1].Select
Application.ScreenUpdating = True
End Sub

à+
Philippe

Ah ouais quand même... j'ai vraiment hâte de m’améliorer... ce donne envie de coder comme ca...

Merci Philippe!
 
- 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

E
Réponses
4
Affichages
1 K
ExcelNewbie96
E
G
Réponses
3
Affichages
1 K
S
Réponses
8
Affichages
2 K
StanislasC
S
N
Réponses
13
Affichages
1 K
Nath641
N
S
Réponses
6
Affichages
1 K
simsinaty
S
Retour