Microsoft 365 imbriquer les formules INDIRECT SI CONDITION ET RECHERCHE X

Sandra.LH

XLDnaute Nouveau
Bonjour,
j'ai une feuille "fichier global article" contenant des ref et désignation article et pour chaque article 1 ou deux ref fournisseur. J'ai aussi plusieurs autre feuilles contentant la liste des article par fournisseurs (1 feuille par fournisseur) avec pour chaque article des indication de tailles poids DLUO composition etc... je voudrais une formule qui en fonction du code fournisseur et de la ref article me remonte les info contenues dans chaque feuille "fournisseur" mais je voudrais quelque chose de dynamique qui fasse qu'en fonction des changements effectués dans les feuilles fournisseurs ceux-ci soirnt automatiquement reporté dans ma feuille fichier global. Je pense qu'il faut utiliser et formules indirect si condition et recherche X mais je ne sais pas dans quel sens les imbriquer commencer par si ou par recherche X enfin bref je sèche si qqn pouvait se pencher sur mon pb. pour info, dans mes feuilles, les tableaux sont tous construits de manière identique avec le code fournisseur en col B et le code article en col D par exemple.
Un grand merci pour votre aide. et de bonnes fêtes à tous
 
Solution
Bonjour,

Dans le fichier ci-dessous vous avez une feuille PQ_Globale_Article qui contient un tableau structuré dont les données sont renvoyées par une requête power query (Onglet 'Données/Requêtes et connexion') plus adaptée à votre demande et un volume important de données que des formules.

Cette requête fusionnes les données des plages dont les noms commencent par 'FOUR' en majuscule.

Lorsque les données changent (modification, création de nouveau fournisseurs, suppression etc) faire un clic droit dans une cellule du tableau puis choisir 'Actualiser'. Ou onglet données, bouton 'Actualiser tout'.


Cordialement

merinos

XLDnaute Accro
Bonjour @Sandra.LH ,

C'est gentil de commencer par un bonjour,...

Mais il y a une case présentation...
important car ainsi on peut avoir une idée de ton expériance personelle, des circonstances..

Le gentil texte que tu écris... est juste indigeste: pas de retour a la ligne, ... Bref j'ai pas tout lu.


Il est aussi dans les habitudes de mettre un petit fichier expurgé de données perso et simplifié afin de ne plus contenir que le probleme... C'EST PLUS SIMPLE POUR REPONDRE


a+

Merinos
 

Sandra.LH

XLDnaute Nouveau
Pardon,

Comme je l'expliquais je débute sur les forums en général,

Je voulais être le plus precise possible et je ne me suis pas du tout focalisée sur la présentation.

Donc je reprends :

J'ai un Fichier excel contant plusieurs feuilles.

Parmi lesquelles une feuille "fichier global article" contenant des références et désignation articles et pour chaque article 1 ou deux code fournisseur et aussi plusieurs autre feuilles "FOURNISSEUR" contentant la liste des article par fournisseurs avec pour chaque article des indication de tailles poids (CF. fichier joint)

Je voulais faire une formule qui en fonction du code fournisseur et de la référence article me remonte dans le fichier global les info contenues dans chaque feuille "fournisseur" (Grâce à la formule RECHERHCE X).

J'arrive à le faire quand il n'y a qu'une seule feuille dans laquelle piocher mais cela se complique quand j'en ai plusieurs.

En naviguant sur internet j'ai vu des tutos sur le fonction INDIRECT et je pense qu'elle peut intervenir mais je n'ai pas réussi jusqu'à présent a ce que cela fonctionne.

J'espère avoir été plus claire et dans mes explications et dans ma mise en page ^^.

Je joins une copie simplifié de mon fichier car il va contenir au final une 50 aine de feuilles.

Je vous remercie de toute l'aide que vous pourrez m'apporter.

Dans l'attente de votre retour je vous souhaite un bon noël.
 

Pièces jointes

  • Example fichier.xlsx
    679 KB · Affichages: 9

Hasco

XLDnaute Barbatruc
Repose en paix
Bonjour,

Dans le fichier ci-dessous vous avez une feuille PQ_Globale_Article qui contient un tableau structuré dont les données sont renvoyées par une requête power query (Onglet 'Données/Requêtes et connexion') plus adaptée à votre demande et un volume important de données que des formules.

Cette requête fusionnes les données des plages dont les noms commencent par 'FOUR' en majuscule.

Lorsque les données changent (modification, création de nouveau fournisseurs, suppression etc) faire un clic droit dans une cellule du tableau puis choisir 'Actualiser'. Ou onglet données, bouton 'Actualiser tout'.


Cordialement
 

Pièces jointes

  • Example fichier.xlsx
    707.4 KB · Affichages: 12
Dernière édition:

Sandra.LH

XLDnaute Nouveau
Bonjour à tous,

j'espère que le reveillon de Noël a été bon pour tout le monde.

je reviens vers vous suite à la résolution de mon problème par Hasco que je remercie grandement.

En passant par Power Query j'ai quand même un autre problème.

Ci joint le résultat que me donne PQ quand j'ajoute mes deux feuilles de classeur. bien que j'ai des données dans les colonnes I à S des deux feuilles intitulées FOUR... dans la feuille ajouter il me manque des données.

j'ai essayé de modifier les formats des fichiers en mettant toutes les colonnes en format standard puis en recopiant strictement les format d'origines sur le fichier de destination mais rien n'y a fait ...

De plus quand j'ajoute mes autres feuilles de calcul le même pb se pose mais pas sur toutes les autres feuilles et pas sur les mêmes colonnes...

Si malgré les fêtes quelqu'un pouvait me donner une piste ca serait super sympa.
Dans l'attente je vous souhaite de bonnes fêtes de fin d'année.
cordialement.
 

Pièces jointes

  • retour PQ FICHIER GLOBAL .xlsx
    83.7 KB · Affichages: 5

Hasco

XLDnaute Barbatruc
Repose en paix
Bonjour,

Si vous interrogez le classeur en cours, utilisez Excel.CurrentWorkbook et utilisez vos tableaux structurés comme source.
Si vous interrogez le classeur en cours par Excel.Workbook(....) il faut que les dernières modifications soient enregistrées pour être prises en compte.

Evitez de nommer de la même façon, une feuille, un tableau et une plage de cellule. Cela porte à confusion. Pour les tableaux par exemple vous pouvez leur ajouter un préfixe. Exemples : T_FOUR0001, T_FOUR0002 etc..

Vous n'aurez qu'à filtrer sur le début de ses noms (T_FOUR), pour être sûr d'avoir à faire à vos tableaux et non des plages ou feuilles.

Vérifiez bien que les noms de colonnes (à mon avis trop longs dans vos exemples) soient identiques d'un tableau à l'autre.

Si vous suivez ces règles avec les nouvelles données, il n'y a aucune raison que vous ayez à rajouter d'autre requêtes pour ajouter au résultat actuel. La requête trouvera les données aux bons endroits (Tableau) et bonnes colonnes.

Votre nom de fichier exemple comporte une espace trainante avant son extension. Non conseillé non plus.

Voici deux exemples requête avec vos 68 colonnes (A à BP).

Les noms des tableaux des deux fichiers sont préfixés par 'T_'
Le premier fichier, après avoir renommer les colonnes dans les feuilles excel.
Et le deuxième fichier, en renommant les colonnes dans la requête uniquement (les colonnes de toutes les tables T_FOUR sont renommées à partir des colonnes de la première table)
 

Pièces jointes

  • retour PQ FICHIER GLOBAL.xlsx
    79.2 KB · Affichages: 4
  • PQ Global Renommer colonnes.xlsx
    72.9 KB · Affichages: 3
Dernière édition:

Sandra.LH

XLDnaute Nouveau
Bonjour,

Si vous interrogez le classeur en cours, utilisez Excel.CurrentWorkbook et utilisez vos tableaux structurés comme source.
Si vous interrogez le classeur en cours par Excel.Workbook(....) il faut que les dernières modifications soient enregistrées pour être prises en compte.

Evitez de nommer de la même façon, une feuille, un tableau et une plage de cellule. Cela porte à confusion. Pour les tableaux par exemple vous pouvez leur ajouter un préfixe. Exemples : T_FOUR0001, T_FOUR0002 etc..

Vous n'aurez qu'à filtrer sur le début de ses noms (T_FOUR), pour être sûr d'avoir à faire à vos tableaux et non des plages ou feuilles.

Vérifiez bien que les noms de colonnes (à mon avis trop longs dans vos exemples) soient identiques d'un tableau à l'autre.

Si vous suivez ces règles avec les nouvelles données, il n'y a aucune raison que vous ayez à rajouter d'autre requêtes pour ajouter au résultat actuel. La requête trouvera les données aux bons endroits (Tableau) et bonnes colonnes.

Votre nom de fichier exemple comporte une espace trainante avant son extension. Non conseillé non plus.

Voici deux exemples requête avec vos 68 colonnes (A à BP).

Les noms des tableaux des deux fichiers sont préfixés par 'T_'
Le premier fichier, après avoir renommer les colonnes dans les feuilles excel.
Et le deuxième fichier, en renommant les colonnes dans la requête uniquement (les colonnes de toutes les tables T_FOUR sont renommées à partir des colonnes de la première table)
Bonjour Hasco,
Encore une fois merci pour votre aide. je vais me pencher dessus dès aujourd'hui.
Je vous souhaite à tous une une très bonne année 2022.
Bonne journée
Cordialement
Sandra
 

Discussions similaires

Réponses
4
Affichages
512

Statistiques des forums

Discussions
314 651
Messages
2 111 561
Membres
111 201
dernier inscrit
netcam