Copier/coller dans un tableau

Résolu
JSCH19 Messages postés 128 Date d'inscription   Statut Membre Dernière intervention   -  
 jsch19 -
Bonjour,
Je cherche une solution a mon problème. J’ai deux tableaux excel dans mon projet ; un sur une feuille nommer “Attente” l’autre sur une feuille nommer “Vente”... je veux par une macro pouvoir copier toutes les lignes dont la colonne “E” de la feuille “Attente” qui a pour valeur 387 vers le tableau de la feuille “Vente”. J’ai réussi a le faire avec une macro mais cela ne prend pas en compte le tableau et colle le résultat au-dessous de la dernière ligne du tableau et n’entre pas dans le tableau. Mon soucis c’est que je veux que la macro colle le résultat dans l’autre tableau et efface les lignes qu’il vient de copier
A voir également:

4 réponses

yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
bonjour, peut-être pourrais-tu commencer par nous montrer le code de ta macro?
tiens compte de ceci: https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
0
JSCH19 Messages postés 128 Date d'inscription   Statut Membre Dernière intervention  
 
<code basic>Private sub CommandButton1_Click
a=worksheets(“Attente”).range(“B” & rows.count).End(xlUp).row

For i=7 to a
     
         If Worksheets(“Attente”).Cells(i,5).value=387 then
Worksheets(“Attente”).Rows(i).Copy
worksheets(“Attente”).Activate 

With worksheets(“Vente”)
b= worksheets(“Vente”).range(“B43”).End(xlUp).row

worksheets(“Vente”).cells(b+1,1).select
worksheets(“Vente”).PasteSpecial

End with
End if
Next
Application.CutCopyMode=False

End sub
</code>
0
JSCH19 Messages postés 128 Date d'inscription   Statut Membre Dernière intervention  
 
Tout ce que j’essaie afin que les lignes copier soient collés dans le tableau de la feuille Vente, je n’arrive pas. Le résultat est coller au-dessous du tableau sans que le tableau ne le prend pas en compte.
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > JSCH19 Messages postés 128 Date d'inscription   Statut Membre Dernière intervention  
 
si je comprends bien, le résultat est copié au bon endroit, mais tu souhaites modifier les dimensions du tableau?
0
JSCH19 Messages postés 128 Date d'inscription   Statut Membre Dernière intervention   > yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention  
 
Bonjour, la macro fonctionne tres bien quand il n’y a pas de tableau, une fois la page contient un tableau elle laisse le tableau vide pour coller le résultat hors du tableau. Moi j’aimerais que le résultat soit coller dans le tableau.
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > JSCH19 Messages postés 128 Date d'inscription   Statut Membre Dernière intervention  
 
peux-tu peut-être partager un fichier exemple?
0
JSCH19 Messages postés 128 Date d'inscription   Statut Membre Dernière intervention  
 
Je ne vois ps comment envoyer le fichier sur le forum
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 
c'est très simple, tu publies ton fichier sur internet (google drive, cjoint.com, ...), et tu partages ici un lien vers le fichier.
0
JSCH19 Messages postés 128 Date d'inscription   Statut Membre Dernière intervention  
 
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 
comme j'ai écris hier, tu dois modifier les dimensions du tableau.
exemple:
Option Explicit
Private Sub CommandButton1_Click()
Dim a As Long, b As Long, i As Long, lrow1 As Long
Dim tb As ListObject, rg As Range

a = Worksheets("Attente").Range("B" & Rows.Count).End(xlUp).row
lrow1 = Worksheets("Attente").Cells(Rows.Count, "G").End(xlUp).row
Set tb = Worksheets("Vente").ListObjects("Table3")
For i = 7 To a
     If Worksheets("Attente").Cells(i, 5).Value = 387 Then
        Worksheets("Attente").Rows(i).Copy
        Worksheets("Vente").Activate
        b = Worksheets("Vente").Range("B1048575").End(xlUp).row
        Set rg = tb.Range
        Set rg = rg.Resize(rg.Rows.Count + 1)
        tb.Resize Range(rg.Address)
        Worksheets("Vente").Cells(b + 1, 1).Select
        Worksheets("Vente").PasteSpecial
   End If
Next
Application.CutCopyMode = False
'ThisWorkbook.Worksheets("Attente").Cells(1, 1).Select
End Sub

0
JSCH19 Messages postés 128 Date d'inscription   Statut Membre Dernière intervention   > yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention  
 
merci yb_be !! J'ajouterai juste une macro pour effacer la ligne vide du tableau.
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > JSCH19 Messages postés 128 Date d'inscription   Statut Membre Dernière intervention  
 
parfait, peux-tu alors marquer la discussion comme résolue?
0
JSCH19 Messages postés 128 Date d'inscription   Statut Membre Dernière intervention   > yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention  
 
Yg_be saurais-tu une façon de supprimer les lignes que la formule vient de copier/coller sans chambouler l’ordre du tableau j’ai essayé en inversant ta formule ca à fonctionné mais n’a pas coller tout le résultat.
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > JSCH19 Messages postés 128 Date d'inscription   Statut Membre Dernière intervention  
 
supprimer les lignes dans le tableau source? tout en gardant les dimensions du tableau source?
0