cpier les lignes d'un tableau vers un autre en vba

djvincebaya

XLDnaute Nouveau
bonjour le forum,
je souhaite copier les lignes d'un tableau placé dans la feuille "Les Entrées", vers un autre tableau situé dans la feuille "2009".
Voici le code que j'ai essayé :
Private Sub transfert_Click()
Dim LASTLIG As Integer
Dim lastlig1 As Integer
Dim l As Long 'n° ligne
Dim c As Long 'n° colonne
Do Until Sheets("Les Entrées").Range("A6") = "" 'début boucle
LASTLIG = Sheets("Les Entrées").[tableau].Find("*", LookIn:=xlValues, SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
With Sheets("Les Entrées")
ActiveWorkbook.Sheets(1).Range("A" & LASTLIG) = Sheets("Les Entrées").Range("A" & LASTLIG)
ActiveWorkbook.Sheets(1).Range("B" & LASTLIG) = Sheets("Les Entrées").Range("B" & LASTLIG)
ActiveWorkbook.Sheets(1).Range("K" & LASTLIG) = Sheets("Les Entrées").Range("K" & LASTLIG)
ActiveWorkbook.Sheets(1).Range("I" & LASTLIG) = Sheets("Les Entrées").Range("I" & LASTLIG)
ActiveWorkbook.Sheets(1).Range("L" & LASTLIG) = Sheets("Les Entrées").Range("L" & LASTLIG)
ActiveWorkbook.Sheets(1).Range("M" & LASTLIG) = Sheets("Les Entrées").Range("M" & LASTLIG)
ActiveWorkbook.Sheets(1).Range("T" & LASTLIG) = Sheets("Les Entrées").Range("T" & LASTLIG)
ActiveWorkbook.Sheets(1).Range("V" & LASTLIG) = Sheets("Les Entrées").Range("V" & LASTLIG)
End With

Sheets("Les Entrées").[tableau].Find("*", LookIn:=xlValues, SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Value = ""
Loop 'fin boucle
Application.ScreenUpdating = True
virements.Value = 0
prélèvements.Value = 0

End Sub

Malheureusement, ce code ne me copie que la colonne A et la colonne L.
Quelles corrections dois-je apporter pour qu'il me copie toutes les lignes pleines du tableau de la feuille "Les Entrées" ?
Par avance merci.
Vince.
 

2passage

XLDnaute Impliqué
Re : cpier les lignes d'un tableau vers un autre en vba

Bonjour,

Je suis un peu fainéant du clavier, je ferais ça plutôt quelquechose comme ça :

Code:
Sub transfert_Click()
Sheets("Les Entrées").Range("A6:V" & Sheets("Les Entrées").Range("A65536").End(xlUp).Row).Copy Destination:=Sheets("2009").Range("A65536").End(xlUp).Offset(1, 0)
End Sub

Je suis parti de l'hypothèse que le tableau part de A6 jusque la colonne V et qu'il faut le coller en colonne A de 2009 en dessous de la dernière ligne.
@+
 

djvincebaya

XLDnaute Nouveau
Re : cpier les lignes d'un tableau vers un autre en vba

salut 2passage et le forum,
ça aide d'être fainéant du clavier parce que ta ligne de code fonctionne au poil.
Cependant, j'ai un autre problème qui est apparu; je t'explique.
Le tableau, dans lesquels je copie les données, est composé d'une colonne "crédit" et d'une autre colonne "débit". Comme tout le monde, j'ai plus de dépenses que de recettes. Et quand, pour un mois donné, je souhaite transférer d'autres recettes, par exemple, ça m'efface les données contenues dans la colonne "débit" qui se trouvent sur les lignes que j'ai complètées juste avant.
Comment résoudre ce problème?
Pour info, je remets ta ligne de code :
Code:
Sheets("Les Entrées").Range("A6:V" & Sheets("Les Entrées").Range("A65536").End(xlUp).Row).Copy Destination:=Sheets("2009").Range("A65536").End(xlUp).offset(1,0)
 
Dernière édition:

djvincebaya

XLDnaute Nouveau
Re : cpier les lignes d'un tableau vers un autre en vba

salut le forum et 2passage,
ça aide d'être fainéant du clavier parce que ta ligne de code fonctionne au poil.
Cependant, j'ai un autre problème qui est apparu; je t'explique.
Le tableau, dans lesquels je copie les données, est composé d'une colonne "crédit" et d'une autre colonne "débit". Comme tout le monde, j'ai plus de dépenses que de recettes. Et quand, pour un mois donné, je souhaite transférer d'autres recettes, par exemple, ça m'efface les données contenues dans la colonne "débit" qui se trouvent sur les lignes que j'ai complètées juste avant.
Comment résoudre ce problème?
Je réitère ma demande
Pour info, je remets la ligne de code :
Code:
Sheets("Les Entrées").Range("A6:V" & Sheets("Les Entrées").Range("A65536").End(xlUp).Row).Copy Destination:=Sheets("2009").Range("A65536").End(xlUp).offset(1,0)
Est-ce que quelqu'un peut venir à mon secours svp ?
par avance merci
 

Discussions similaires

Réponses
2
Affichages
180

Statistiques des forums

Discussions
312 557
Messages
2 089 593
Membres
104 215
dernier inscrit
Jean Michl