Controle Production Vente

Bonjour,

J’ai beau chercher partout, je ne trouve pas la solution à mon problème.

Le voici :

Sur la feuille Production, j’ai les codes des produits fabriqués pour chaque jour du mois (liste des codes en colonne A et date en colonne B)

Certains produits sont fabriqués seulement certains jours et d’autres chaque jour.

En feuille Vente, j’ai les codes des produits vendus pour chaque jour du mois.

Certains jours, tous les produits sont vendus mais d’autres non et c'est cette information que je souhaite voir apparaitre.

Je cherche donc une formule qui fera apparaitre un code erreur en colonne C de la feuille Production dans le cas où, pour chaque ligne (code produit – jour), le produit n'a pas été vendu.

J’avais commencé par faire une feuille pour chaque jour de vente (chaque feuille étant nommée par la date du jour) et grâce à une formule du type :

=RECHERCHEV(A2;INDIRECT("'"&C2&"'!A:B");1;FAUX)

J’obtenais l’info recherchée (voir fichier ci-dessous).

Mais c’est assez fastidieux de créer ces onglets car mon fichier source me sort les données d'un bloc comme dans la feuille Vente du 2ème fichier ("controle vente objectif.xlsx") et je dois redécouper manuellement en 31 feuilles ces données.

Il faudrait donc que la formule améliorée fonctionne sur un fichier avec une seule feuille pour les Ventes.

Je suis quasiment sûr que je dois travailler avec INDEX et EQUIV pour y arriver mais impossible de trouver la bonne formule.

Si je ne suis pas assez clair dans mes explications, il faut qu’en colonne C de la feuille Production, il faut que le code produit s’affiche à conditions qu’il se trouve dans la feuille Vente mais en prenant en compte la date.

Ex : Le 870002 a été fabriqué le 1er, le 2 et le 3 mais vendu uniquement le 1er et le 3.

Merci beaucoup d'avance à ceux qui m'aideront et qui trouveront, je l'espère, la solution.

Bonjour,

Un test avec une colonne CONCATENER et un NB.SI sur des tables structurées feront le travail et prendront moins de place qu'une RECHERCHEV ou un INDEX/EQUIV matriciel.

Par contre quand tu me dis une feuille par jour j'ai peur de la maintenabilité et l'intérêt de l'opération ..

En restant à dispo.

Bonne soirée.

20nb-si-v1.xlsx (14.54 Ko)

Bonsoir,

Ou simplement :

=SI(NB.SI.ENS(Vente!B:B;A2;Vente!A:A;B2)>0;A2;NA())

(sauf si j'ai loupé quelque chose ?)

Edit : Je n'avais pas regardé ta solution Ergotamine. J'ai vu matriciel et j'ai zappé trop vite le reste de la lecture du coup ^^.

Désolé, ma solution ressemble beaucoup à la tienne. Juste, pas besoin de rajouter de colonne je pense.

Bonsoir,

Non je suis juste très con ...

Merci beaucoup JoyeuxNoel !

Edit : A la base j'étais parti sur cette idée d'INDEX EQUIV avec un CONCATENER en lisant le post ... Puis j'ai switché sur NB.SI en cours de route, sans passer par la case NB.SI.ENS désolé c'est ma faute !

Allons, allons, un petit moment d'égarement nous arrive à tous. Ça va revenir ;)

Merci @JoyeuxNoel et @Ergotamine.

La formule de @Ergotamine fonctionnait bien mais elle m'obligeait effectivement à passer par la création de tableau et elle demandait énormément (trop) de ressources à mon PC.

La formule de @JoyeuxNoel est "plus simple" mais elle demande toujours une grosse puissance de calcul.

C'est vrai que je n'avais tout précisé car je voulais que mes exemples restent simples.

Dans la réalité, pour le mois de Janvier, j'ai 4164 codes de Production et 75078 codes de Vente (oui, plus de vente que de production car je peux extraire les codes de ma production uniquement mais pour les ventes, je suis obligé de faire une extraction de Ventes nationales !!!!!).

Bref, cela fonctionne et je vous en remercie.

Bonne journée à vous 2.

Bonjour à tous,

autre présentation avec un TCD, mais moins pénalisant si ressources limitées.
Clic-droit dessus et actualiser si les données changent.
Au cas où ça t'aille. Pas sûr...

Attention, si un produit n'est pas du tout vendu sur la période il n'apparaitra pas, à moins de mettre une commande à 0 dans les données.

eric

Bonjour à tous,

Une variante avec Power Query. A l'ajout de nouvelles valeurs, clic droit sur le tableau, Actualiser. (il est possible de le faire par VBA)

Cordialement.

Bonjour,

Ne serait-il pas envisageable d'avoir un fichier avec tes codes de production, dans lequel tu colles ton extraction du logiciel avec les ventes nationales, et une macro virerai toutes les lignes qui correspondent à des codes que tu ne vends pas ?

Ça épurer ait déjà bien la base, non ?

Rechercher des sujets similaires à "controle production vente"