Copier/coller ligne tableau

JSCH19 Messages postés 128 Date d'inscription   Statut Membre Dernière intervention   -  
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   -

Bonsoir le forum,

je cherche a copier des lignes specifique d'un tableau vers un autre,

pour illustrer ma demande:

disons que j'ai deux tableaux,Tableau1 et Tableau2 composes de 6 colonnes ("B:G")

j'aimerais copier a partir des colonnes ("D:G") du tableau1 vers les colonnes respectives du Tableau2

voila mon code et un exemple du fichier que j'utilise.

https://drive.google.com/file/d/13foDZopZgsh-ejToDPwcZVy9GuqKA4wW/view?usp=sharing

Dim ligne%, X%

  [B7].CurrentRegion.Sort , key1:=[B7], Header:=xlYes
  ligne = 7: X = 4
  
    While Sheet1.Cells(ligne, 3).Value <> Empty
    
    If Sheet1.Cells(ligne, 3).Value = "TR-0000001" Then
    
       Sheet2.Cells(ligne, X).Value = Sheet1.Cells(ligne, X).Value
       
    X = X + 1
    
    End If
    
    ligne = ligne + 1
    
    Wend

NB:mais en realite mon tableau comporte 56 colonnes

Cordialement JSCH19

A voir également:

8 réponses

f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 

Bonjour,

Pourquoi copier que D:G, les autres colonnes servent a quoi?

0
JSCH19 Messages postés 128 Date d'inscription   Statut Membre Dernière intervention  
 

Bonjour ,

On copie a partir d' Article a Prix HT ("D:G") parce que la colonne piece sera rempli a partir d'un textbox.

0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 

Re,

Ok,

Connaissez vous les instructions relatives a la gestion des Tableaux (Table)?

0
JSCH19 Messages postés 128 Date d'inscription   Statut Membre Dernière intervention  
 

Pouvez-vous etre plus explicite...

0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 

Re,

Vous avez deux tables ou plus exacement Tableaux

'test cellule "normale"
If .Cells(ligne, 3).Value = "TR-0000001" Then
'test cellule d'un tableau
If Tableau1.DataBodyRange.Item(n, 2).Value = "TR-0000001" Then
'ou sans accents pour les noms de colonne
If Range("table1[Pieces]").Item(i).Value = "TR-0000001" Then
0
JSCH19 Messages postés 128 Date d'inscription   Statut Membre Dernière intervention  
 

Re,

Oui je connais parfaitement les instructions relatives a la gestion d'un tableau... Pourquoi cette question?

Cordialement JSCH19

0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 

Re,

Pourquoi ne les utilisez vous pas?

sans tableau:copie plage vers une autre plage:

Cells(10, 4).Resize(, 4) = Cells(4, 4).Resize(, 4).Value
0
JSCH19 Messages postés 128 Date d'inscription   Statut Membre Dernière intervention  
 

Re,

Laisse moi essaye avec ce que tu m as propose, avez-vous access au lien dont j'ai poste?

0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 

Re,

J'ai recupere votre fichier. C'est comme ca que j'ai constate que vous n'utilisez pas les instructions tableau

servira pas trop a grand chose que j'utilise les cells ou autres

Et que voulez vous utiliser pour completer votre table14?

0
JSCH19 Messages postés 128 Date d'inscription   Statut Membre Dernière intervention  
 

jlai modifie,jn'avais pas vue ta modification avant que je poste ce message,je travaille la-dessus,imaginez-vous que dans mon tableau reel j'ai 56 colonnes

je ne voulais pas me retrouver a ecrire:

      Sheet2.cells(ligne, 4).Value = Sheet1.cells(ligne, 4).Value
      Sheet2.cells(ligne, 5).Value = Sheet1.cells(ligne, 5).Value
      Sheet2.cells(ligne, 6).Value = Sheet1.cells(ligne, 6).Value
      Sheet2.cells(ligne, 7).Value = Sheet1.cells(ligne, 7).Value
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 

Re,

Donc c'est ok?

0
JSCH19 Messages postés 128 Date d'inscription   Statut Membre Dernière intervention  
 

Re,

Pas encore je cherche une solution beaucoup plus efficient et moins volumineux.

exemple:

Dim ligne%, X%

  [B7].CurrentRegion.Sort , key1:=[B7], Header:=xlYes
  ligne = 7: X = 4
  
    While Sheet1.Cells(ligne, 3).Value <> Empty
    
    If Sheet1.Cells(ligne, 3).Value = "TR-0000001" Then
     
       Sheet2.Cells(ligne, X).Value = Sheet1.Cells(ligne, X).Value

    Do Until X = 8
    
       Sheet2.Cells(ligne, X).Value = Sheet1.Cells(ligne, X).Value
       
    X = X + 1
    
    Loop

    End If
    
    ligne = ligne + 1

    Wend
    

mais ce code n'est pas encore a point,toute proposition est la bienvenue.

Cordialement JSCH19

0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 

Re,

Je vous ai mis des exemples

Celle du post <7> est adoc

Vous voulez que jevous face la modif?

0
JSCH19 Messages postés 128 Date d'inscription   Statut Membre Dernière intervention  
 

Re,

Sans probleme. 

0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713 > JSCH19 Messages postés 128 Date d'inscription   Statut Membre Dernière intervention  
 

Vous avez bien 56 colonnes dans vos tableaux?

De B a ..........

0
JSCH19 Messages postés 128 Date d'inscription   Statut Membre Dernière intervention   > f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention  
 

Re,

Oui exactement,vous avez essaye le dernier code dont j'ai poste?

je suis presque sur la bonne voie

0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713 > JSCH19 Messages postés 128 Date d'inscription   Statut Membre Dernière intervention  
 

Re,

je suis presque sur la bonne voie

Ben non. C'est le meme style de code qu'au debut

Je vous arange la chose

0
JSCH19 Messages postés 128 Date d'inscription   Statut Membre Dernière intervention   > f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention  
 

Re,

Ok! je vous attends!

0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 

Re,

Une facon de faire:  https://www.cjoint.com/c/LIbro770szg

0
JSCH19 Messages postés 128 Date d'inscription   Statut Membre Dernière intervention  
 

Re,

Tu l'as resolu avant moi... mais je n'y avais pas pensé a cette methode mais je vais l'adapter a mon fichier.

Un grand merci @f894009!!!

0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713 > JSCH19 Messages postés 128 Date d'inscription   Statut Membre Dernière intervention  
 

Bonjour,

C'est ce qu'il y a de plus simple

0