XL 2013 Report automatique de donnée à partir d'un TCD vers un autre fichier

cece44

XLDnaute Junior
Bonjour,
J'ai un cas difficile , je vais essayer de vous l'exposer clairement afin d'obtenir une réponse.

1/ Dans le fichier ACHATS qui comporte plein de liaisons nous souhaitons dans l'onglet Stat AFD+VF inclure automatiquement les quantités livrées (colonne N) et les quantités reprises (colonne T), et inclure automatiquement les prix de vente (colonne O) et d'avoirs (colonne U).

2/ Les chiffres à reporter sont dans un tableau croisé dynamique, il sont répertoriés par code article.

J'ai pensé à une recherche V avec les codes articles, mais je ne sais pas comment le faire.

Quelqu'un peut-il m'aider.

Merci
 

Pièces jointes

  • TCD Produits livrés et repris.xlsx
    710.2 KB · Affichages: 12
  • Achat Fleurs.zip
    390.4 KB · Affichages: 9

cece44

XLDnaute Junior
C'est bien cela le problème, le code article a changé, mais le service achat continu de l'utiliser dans son fichier de production .....
Il est lié au nouveau code dans l'onglet Poches Bqts et dans le TCD c'est bien stipulé.
Je vous joins de nouveau le fichier avec les légendes pour être explicite.
 

Pièces jointes

  • Achat Fleurs1.zip
    619.2 KB · Affichages: 5

danielco

XLDnaute Accro
Dis-moi si ça te convient :

VB:
Sub Copie()
  Dim Sh As Worksheet, C As Range, Plage As Range, AncCode As Variant, Ligne As Variant
  Set Sh = Workbooks("TCD Produits livrés et repris.xlsx").Sheets("TCD")
  With Sh
    Set Plage = .Range("D5", .Cells(.Rows.Count, 4).End(xlUp))
  End With
  With ThisWorkbook.Sheets("Stat AFD+V.F")
    For Each C In Plage
      AncCode = Application.VLookup(C.Value, ThisWorkbook.Sheets("Poches Bqts").[B:C], 2, 0)
      If IsNumeric(AncCode) Then
        Ligne = Application.Match(AncCode, .[H:H], 0)
        If IsNumeric(Ligne) Then
          .Cells(Ligne, 14).Value = Sh.Cells(C.Row, 7)
          .Cells(Ligne, 16).Value = Sh.Cells(C.Row, 8)
          .Cells(Ligne, "T").Value = Sh.Cells(C.Row, 5)
          .Cells(Ligne, "V").Value = Sh.Cells(C.Row, 6)
        End If
      End If
    Next C
  End With
End Sub

La macro est dans le fichier joint. Les deux classeurs doivent être ouverts.

Daniel
 

Pièces jointes

  • Achat Fleurs.xlsm
    431.3 KB · Affichages: 9

cece44

XLDnaute Junior
Merci mais cela ne fonctionne pas, il me demande de me connecter ?????
j'ai copié l'écran (cf ci dessous)

1565274795619.png
 

danielco

XLDnaute Accro
J'ai eu aussi ce problème de liaison. Apparemment, dans une autre vie, le classeur avait une autre feuille nommée "NB SEAU". Tu devrais pouvoir poursuivre en cliquant sur la croix pour fermer cette fenêtre. Sinon, il faut copier le code que j'ai inséré dans mon précédent post et le coller dans ton classeur. Si tu ne sais pas le faire, dis-le. Je t'indiquerai comment.

Daniel
 

Membres actuellement en ligne

Statistiques des forums

Discussions
312 084
Messages
2 085 194
Membres
102 811
dernier inscrit
caroline29260