Bonjour,
J'ai un code qui me permet de copier, sur une nouvelle feuille le contenu d'une autre (qui contient un TCD).
Mon problème est le suivant, lorsque la macro a tournée, sur la nouvelle feuille SDD R2Y16, il manque des lignes de mon TCD car je pense que seules, les 26 premières lignes de la feuille R2Y2016 SDD sont copiées.
I'l n'y a pourtant pas de borne supérieure..
Pourriez-vous m'aider svp?
D'avance, un tout grand merci!
Jenna
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33 Sub Macro() Dim TabFeuilles() Dim ShSource As Worksheet Dim ShDest As Worksheet Dim i As Integer ' pour boucler sur les feuilles TabFeuilles = Array("R2Y2016 SDD") Set ShDest = ThisWorkbook.Worksheets("SDD R2Y16") ' nettoyage de la feuille de destination ShDest.Rows(1 & ":" & ShDest.Rows.Count).Clear ' pour chaque feuille For i = LBound(TabFeuilles) To UBound(TabFeuilles) Set ShSource = ThisWorkbook.Worksheets(TabFeuilles(i)) With ShSource ' si la dernière ligne est supérieure à 8 = il y a des données dans le TCD If .UsedRange.Rows.Count > 8 Then ' copie de la plage du TCD dans la feuille de destination .Range(.Cells(8, 1), .Cells(.UsedRange.Rows.Count, .UsedRange.Columns.Count)).Copy _ ShDest.Cells(ShDest.UsedRange.Row + ShDest.UsedRange.Rows.Count + 1, 1) End If End With Next i Set ShSource = Nothing Set ShDest = Nothing End Sub
Partager