Macro : récuperer valeurs actualisées d'un autre classeur

Fermé
RF3347 - 23 mars 2022 à 20:37
f894009 Messages postés 17200 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 11 septembre 2024 - 29 mars 2022 à 06:49
Bonjour,

Je dispose d'un classeur qui récupère toutes les nuits des données provenant d'un logiciel tiers qui efface les valeurs du classeur et le rempli de nouveau avec les données actualisées. Ceci fonctionne très bien.

Je souhaiterais créer un autre classeur qui irait chercher dans ce classeur "source" des données comme suit :
- si [en tête de colonne] = "Nom du contact" alors récupérer toutes les lignes dont les lignes dont les [valeurs de cette colonne] = "Dupont"

Je précise que la colonne en question peut avoir un emplacement différent : A, B, C ... selon que les utilisateurs du logiciel dont proviennent les données ont ajouté ou non des champs additionnels. Mais le champs "Nom du contact" sera toujours présent dans le tableau. C'est donc le Nom de la colonne, ou En-tête, qui fait foi et non sa position dans le tableau.

Quelqu'un aurait il une macro permettant de faire ceci svp ? Le fichier excel source ayant plusieurs onglet j'imagine que le code VBA devra préciser l'onglet sur lequel pointer.

Vraiment merci d'avance. Si pas clair j'essaie de vous joindre 2 fichiers exemples dans le week end.

bonne soirée

RF3347

Configuration: Android / Chrome 99.0.4844.73
A voir également:

10 réponses

f894009 Messages postés 17200 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 11 septembre 2024 1 708
24 mars 2022 à 07:30
Bonjour,

Pour transmettre un fichier,
Veillez a ce qu'il n'y ait PAS DE DONNEES CONFIDENTIELLES
il faut passer par un site de pièce jointe tel que cjoint.com

Allez sur ce site : https://www.cjoint.com/
Clic sur parcourir,
Cherche ton fichier,
clic sur ouvrir,
Clic sur "Créer le lien cjoint",
Copier le lien,
Revenir ici le coller dans une réponse...
0
Bonjour f894009

merci pour ton aide.
voici les 2 fichiers ainsi qu'à l'intérieur de chacun quelques instructions sur les attentes de la macro.
encore merci pour le coup de main
https://www.cjoint.com/c/LCzqUFwH1KC
0
f894009 Messages postés 17200 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 11 septembre 2024 1 708
26 mars 2022 à 11:17
Bonjour,

J'ai recupere vos fichiers et il y incohérence entre votre demande de depart:
- si [en tête de colonne] = "Nom du contact" alors récupérer toutes les lignes dont les lignes dont les [valeurs de cette colonne] = "Dupont"
et ce que vous avez ecrit dans le classeur travail:
Si des ID sont manquants dans le Classeur Travail, la macro doit permettre de les identifier dans le Classeur Source et les copier dans le Classeur Travail
0
Bonjour.
C'est exact, en créant les 2 fichiers exemple j'ai pris conscience que raisonner sur les ID pour récupérer les données dans le classeur Travail était plus pertinent puisque les id seront uniques. Ainsi chaque jour de nouvelles lignes avec un id unique seront créées dans le classeur Source. Si je peux actualiser mon classeur Travail dès nouvelles données du classeur Source, je pourrais ensuite les exploiter dans un onglet avec un tableau croisé.
Merci !
0

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

Posez votre question
f894009 Messages postés 17200 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 11 septembre 2024 1 708
Modifié le 26 mars 2022 à 15:49
Re,

Tout a fait Thierry, mais est-ce possible d'avoir plusieurs ID pour un meme nom car d'apres ceci:
toutes les lignes dont les lignes dont les [valeurs de cette colonne] = "Dupont"
c'est vrai ou meme ID pour plusieurs lignes, pouvez detailler et etoffer vos fichiers avec des exemples concrets
0
Re ,

ID est une valeur unique. Donc oublions désormais la demande initiale.
Après reflexion si je résume le besoin ça donnerait ça :
Une macro se lance à l'ouverture (ou sur demande, peu importe) du fichier Classeur Travail.
Rechercher dans Classeur Source les ID non présents dans Classeur Travail.
Pour chaque ID trouvé, copier les valeurs de la ligne concernée et et les coller dans Classeur Travail à la suite des lignes déjà présentes.

Ainsi dans les fichiers transmis il y a quelques lignes non présentes dans Classeur Travail et qui figurent dans Classeur Source. La macro devrait pouvoir compléter Classeur Travail avec ces lignes manquantes.

Merci ! Et bon dimanche ????
0
f894009 Messages postés 17200 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 11 septembre 2024 1 708
27 mars 2022 à 17:54
Bonjour,

Ok, ca roule
0
f894009 Messages postés 17200 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 11 septembre 2024 1 708 > f894009 Messages postés 17200 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 11 septembre 2024
28 mars 2022 à 07:22
Bonjour,

Le champ ID est au moins toujours a la meme place?
0
Bonjour !
Oui, ce champ est impossible à déplacer par les utilisateurs.
Il figurera toujours en colonne A lors de l'export automatique des données vers le classeur Source.
Merci
0
f894009 Messages postés 17200 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 11 septembre 2024 1 708
28 mars 2022 à 11:29
Re,

Ok
0
f894009 Messages postés 17200 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 11 septembre 2024 1 708
28 mars 2022 à 17:37
Suite:

Fichier xlsm et votre fichier source: https://www.cjoint.com/c/LCCpIeSgqwf
La procedure de traitement se lance a l'ouverture du classeur xlsm.
Classeur ouvert, click droit sur cellule entete ID (A1) pour lancer la procedure de traitement
1
Bon ben...c'est parfait !
Un petit coup de debogueur pour indiquer le bon chemin en local et ça fonctionne.
Ca n'aime pas trop en revanche le mélange des colonnes dans le Fichier Source, mais je vais figer cet aspect en amont pour verrouiller ce point. Pour être précis les données du fichier Source proviennent d'un formulaire dont les champs peuvent être déplacés par les utilisateurs, d'où le risque de mélange des colonnes. Je vais empêcher cette fonctionnalité.
Merci beaucoup.
bonne soirée.
0
f894009 Messages postés 17200 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 11 septembre 2024 1 708
29 mars 2022 à 06:49
Bonjour,

ca n'aime pas trop en revanche le mélange des colonnes
Avec le fichier source mis a dispo, y a pas de soucis, donc quelle difference avec le fichier source que vous utilisez ?
0