Fusion de 2 feuilles suivant critère

Bonjour à tous,

Petite difficulté pour faire la chose suivante... Je viens donc quérir votre aide.

Dans le fichier, ci-joint, j'aimerais une macro qui me permette de fusionner la Sheet "A" et la Sheet "B" pour former la Sheet "Récap".

Les deux colonnes importantes pour cela sont les colonnes "Date" et "ID". J'aimerais que la fusion se fasse de manière à ce que pour une meme date, les IDs soient classés du plus petit au plus grand...

L'exemple ci-joint est bien plus parlant que mon explication, vous verrez.

Un grand merci d'avance,

Bonne journée,

VBABEGINNER

18test.xlsx (10.71 Ko)

Bonjour,

Une proposition à étudier.

Les données ont été mises sous forme de tableaux.

Cdlt.

30vbabeginner.xlsm (26.18 Ko)

Bonjour Jean-Eric,

C'est exactement cela ! Un très grand merci !!

Je testerai demain sur le fichier original pour confirmer que mon fichier test est bien 100 pourcent représentatif... sait on jamais.

Je fermerai le fil alors. Maisen tout cas : un grand merci à toi !!

Bonne journée à tout le forum

Cordialement,

Vbabeginner

Re-Bonjour Jean-Eric,

Deux petites choses si cela ne te dérange pas.

- Pourrais-tu s'il te plait modifier la macro afin qu'elle vise spécifiquement la feuille A et feuille B ?

Le fait est que dans le fichier original j'ai n'ai pas que les 3 feuilles en question (certaines sont même cachées) et que la macro a alors du mal à me fournir un résultat ( une erreur se produit au niveau de cette ligne

ws.ListObjects(1).DataBodyRange.Copy

)

- Connaitrais-tu la ligne de code qui a pour but : " d'attendre que tous les TCD du fichier soit mis à jour ( ce qui est fait automatiquement à l'ouverture du fichier) avant de lancer le code que tu m'as fourni ?

Encore un grand merci et désolé pour la surenchère vis à vis de mon post initial.

Bonne soirée,

Vbabeginner

Re,

Réponse demain.

Cdlt...

Merci !

Bonne soirée !

Vbabeginner

Bonjour,

Ton fichier en retour qui ne traite que des feuilles A et B.

A l'ouverture du classeur, je te propose cette procédure :

Private Sub Workbook_Open()
Dim ws As Worksheet, pt As PivotTable
    'Etape 1 : actualisation des TCds
    For Each ws In ThisWorkbook.Worksheets
        For Each pt In ws.PivotTables
            pt.PivotCache.Refresh
        Next pt
    Next ws
   'Etape 2 : Copie et tri des donn?es
    Consolidate_data
End Sub

A te relire.

Cdlt.

17vbabeginner.xlsm (27.30 Ko)

Bonjour,

Je préparais un fichier 100 % représentatif pendant ta réponse ... Je ne pensais pas que tu étais aussi matinal.

J'avais constaté l'apparition de lignes vides ==> nécessité d'un meilleur exemple. Je te le joins si tu as le temps d'y jeter un oeil. Si pas je pense que je pourrai quand meme m'en sortir avec ce que tu m'as déjà fourni !

Je vais tester ton nouveau fichier !

Un grand merci !

Cordialement,

Vbabeginner

13vbabeginner.xlsm (49.09 Ko)

Re,

J'ai du mal à comprendre ce que tu veux faire !?

Les feuilles A et B sont identiques aux feuilles masquées Data A et Data B.

Et lorsque l'on travaille avec des tableaux (structurés) on évite les lignes vides !...

Un peu d'explications sur l'objectif serait bienvenues.

Cdlt.

Re,

Oui désolé j'ai un peu de mal à expliquer mon soucis.

A et B vont chercher les valeurs dans les TCD à l'aide de formules... Les deux tableaux sont fusionnés dans la feuille récap... ce que fait ta macro.

Le problème c'est que si les TCD sont mis à jours et des lignes sont rajoutées, pour que les feuiles A et B restent à jour également, j'ai tiré les formules vers le bas pour prévoir l'évolution... Les lignes vides ne sont pas dans le tableau mais regroupées en bas et serviront si de nouvelles données entrent dans les TCD...

En gros cela donne : ouverture du fichier ... Mise à jour des TCD ... Mise à jour de A et B grâce aux formules qui piochent dans le TCD ... Récap créé grâce à ta macro ... Mais les lignes vides de A et B posent problème.

Est-ce plus clair ? Mon dernier fichier montre exactement le "problème". Mais c'est peut-être dû à une mauvaise utilisation des formule dans les tableaux A et B de ma part...

Merci.

Ps: j'ai entre temps pensé à une autre méthode que je dois encore tester : copier A sous B et puis "Tri personnalisé" suivant le critère date puis le critère ID...

Un grand merci à toi !

Bonne journée,

Vbabeginner

Re,

@ Jean-Eric, en filtrant le résultat avec un filtre avancé, le résultat de ta macro est tel que je le désir!

Un grand merci pour ton aide !

Je ferme le fil.

Bonne fin de journée,

Cordialment,

Vbabeginner

Rechercher des sujets similaires à "fusion feuilles suivant critere"