Creer fonction de recherche sur excel

Résolu/Fermé
diabolo162 Messages postés 1002 Date d'inscription lundi 28 janvier 2008 Statut Membre Dernière intervention 9 octobre 2018 - Modifié par diabolo162 le 26/09/2010 à 19:55
diabolo162 Messages postés 1002 Date d'inscription lundi 28 janvier 2008 Statut Membre Dernière intervention 9 octobre 2018 - 5 oct. 2010 à 17:51
Bonjour,

Voila je sollicite votre aide si précieuse pour créer un dossier trop compliqué pour moi.

j'ai créé un classeur de gestion de sortie de marchandise.

Dans mon classeur "gestion de stock"J'aimerais que la feuille journalière de sortie de marchandises se mette automatiquement à jour à partir de ma base de donnée .

Cette base de donnée calcule : quantité de marchandise en poids, en pièce, en boite de conserve..en fonction d'un nombre de personne appelé "effectif"etc

Mon menu est mis à jour dans mon classeur "menu". On retrouve mon "menu" et "l'effectif" des personnes dans le classeur "ration".

Je vous fournis les classeurs ci dessous avec des explications sur chaque classeur:

http://www.cijoint.fr/cjlink.php?file=cj201009/cijcGOgPnq.zip

Merci d'avance pour votre aide
A voir également:

20 réponses

diabolo162 Messages postés 1002 Date d'inscription lundi 28 janvier 2008 Statut Membre Dernière intervention 9 octobre 2018 29
27 sept. 2010 à 06:04
Je relance mon sujet car c'est vraiment important pour moi dans son utilité...
Si un savant fou pouvez m'aider...merci merci beaucoup
0
Le Pingou Messages postés 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426
27 sept. 2010 à 10:34
Bonjour,
Une réponse au MP se serait la moindre des choses!
Salutations.
Le Pingou.
0
diabolo162 Messages postés 1002 Date d'inscription lundi 28 janvier 2008 Statut Membre Dernière intervention 9 octobre 2018 29
Modifié par diabolo162 le 27/09/2010 à 20:40
Bonjour Pingou,
Désolé j'avais pas vu ....
Est ce que tu penses que c'est réalisable?
0
Le Pingou Messages postés 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426
27 sept. 2010 à 23:53
Bonjour,
J'ai regardé selon votre demande et je constate qu'il y a une incohérence entre les fichiers [Gestion de stock.xls ], [Menu.xls], [Ration.xls] et [Effectif semaine 1.xls] c'est impossible de retrouver vos 2 exemples (Abricot au sirop et Eclair).
En plus d'où tombent les valeurs que vous citez dans [Gestion de stock.xls ] et comment savoir pour quel jour elles doivent être comptées.
Je pense qu'il est nécessaire de fournir une explication détaillée accompagné d'un exemple concret.
0
diabolo162 Messages postés 1002 Date d'inscription lundi 28 janvier 2008 Statut Membre Dernière intervention 9 octobre 2018 29
Modifié par diabolo162 le 28/09/2010 à 18:29
Bonjour,

Je m'aperçois que mon doc n'est pas au point...Je vais travailler dessus pour l'améliorer
Effectivement il faut que j'ajoute les jours de la semaine aussi pour prendre en compte les effectifs et le grammage.

La difficulté de ce document "gestion de sortie de marchandises"est que je dois inscrire les marchandises et la quantité à sortir.
Je vais modifier le doc pour le simplifié afin que toute les sorties soient exprimer en "Kg".

Je vais essayer de mieux expliquer le problème :

Je dois vous donner tous les classeurs car c bourré de liens

1er dossier à ouvrir : "Effectif semaine 1"
Pour les mises à jour

2eme dossier à ouvrir "ration"
On retrouve le jour, l'effectif et le menu mis à jour sur le service du midi et du soir ce qui constitue la base.

3eme dossier "gestion de sortie"
- Sur "Feuille gestion de stock"
Ce dossier doit se mettre à jour par rapport au dossier "ration" sur l'effectif, le menu et le jour.
Il calcule la quantité en "Kg"de marchandise à sortir

4eme dossier à ouvrir "gestion de sortie"
- "Lundi"ou autre jour
Ce dossier est la fiche de sortie de marchandise journalière. c'est le document finale.

Je met le lien avec le classeur modifié et les explications dessus
http://www.cijoint.fr/cjlink.php?file=cj201009/cijyxgsjkb.zip

J'espere que j'ai suffisamment bien expliquer pour me faire comprendre...
0

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

Posez votre question
Le Pingou Messages postés 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426
28 sept. 2010 à 18:30
Bonjour,
Merci pour l'information.
Je n'ai pas lu l'entier de votre message.
Je pense que vous devez avoir, en principe :
.-Le menu pour une semaine (c'est ok sur menu.xls)
.- Chaque établissement établi le total des menus selon une carte de menu reprise de menu.xls.
.- Avec ses informations vous déterminez les besoins en aliments pour un établissement et par jour ou pour l'ensemble des établissements
.- Pour terminer on établi la commande par jour pour un établissement ou pour tous.
0
diabolo162 Messages postés 1002 Date d'inscription lundi 28 janvier 2008 Statut Membre Dernière intervention 9 octobre 2018 29
Modifié par diabolo162 le 28/09/2010 à 21:34
"- Chaque établissement établi le total des menus selon une carte de menu reprise de menu.xls."

Oui en fait il y a 2 menus : 1 menu normal et 1 menu régime

"- Avec ses informations vous déterminez les besoins en aliments pour un établissement et par jour ou pour l'ensemble des établissements "

c'est pour l'ensemble des établissements

"- Pour terminer on établi la commande par jour pour un établissement ou pour tous. "

Oui La commande est pour tous les établissements
Soit ils ont tous le meme menu
ou
Soit il y a 1 menu normal et 1 menu régime
0
diabolo162 Messages postés 1002 Date d'inscription lundi 28 janvier 2008 Statut Membre Dernière intervention 9 octobre 2018 29
29 sept. 2010 à 20:08
Bonjour,

J'avance un peu dans mon dossier....mais la je suis coincé!

feuil 1 :Dans mon menu en B8:B12;P8:P12;B21:25;P21:P25 est inscrit du texte different sur chaque ligne
Feuil 2: dans mon dossier gestion en D8:D509 j'ai ma liste de menu

J'aimerais que dans la colonne "F" integrer une fonction de recherche de la liste D8:D509 par rapport à B8:B12;P8:P12;B21:25;P21:P25 et que s'il trouve le meme texte qu'il l'inscrive sur la meme ligne en colonne "F"

exemple :
B8 = salade nicoise
B9 = Sauté de boeuf
B10 etc....
Dans la liste de menu "salade nicoise" est en B209 et sauté de Boeuf en B485
Donc en F209 j'aimerais inscrit "Salade nicoise" et en F485 "Sauté de boeuf".
Est ce que ca existe une formule SVP?
0
Le Pingou Messages postés 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426
29 sept. 2010 à 21:32
Bonjour,
Je ne suis pas Mme Soleil, il est tout simplement impossible de trouver les données que vous citez sans savoir le nom du classeur et de la feuille!
Salutations.
Le Pingou
0
diabolo162 Messages postés 1002 Date d'inscription lundi 28 janvier 2008 Statut Membre Dernière intervention 9 octobre 2018 29
30 sept. 2010 à 17:25
Bonjour Pingou,

Voici mon fichier.

Mon menu midi et soir apparait dans les feuilles "Lundi;Mardi;Mercredi...etc" dans la colonne "B" et "P".

Dans la feuille "Gestion de sortie" Je n'arrive pas a trouver une formule placé dans colonne "F"qui inscrit les menus des feuilles ci dessus en face du plat similaire de la liste "B".
De plus le menu qui sera trouver devra s'inscrire comme dans la liste "D"

Voici mon fichier :
http://www.cijoint.fr/cjlink.php?file=cj201009/cij2XdCLlL.xls

Merci beaucoup pour l'aide
0
Le Pingou Messages postés 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426
1 oct. 2010 à 22:01
Bonjour,
Mon menu midi et soir apparait dans les feuilles "Lundi;Mardi;Mercredi...etc" dans la colonne "B" et "P".
Réponse : oui c'est OK

Dans la feuille "Gestion de sortie" Je n'arrive pas a trouver une formule placé dans colonne "F"qui inscrit les menus des feuilles ci dessus en face du plat similaire de la liste "B".
Réponse : qu'est-ce que vous allez faire avec le nom (Ananas) en colonne F ?

De plus le menu qui sera trouver devra s'inscrire comme dans la liste "D"
Réponse : et pourquoi le menu (ananas) doit être reporté en D ? mystère ....

Note : dans la cellule [F11] vous pouvez essayer cette formule ;
=SI(SOMMEPROD(((INDIRECT(JourGestion&"!B8:B25"))='Gestion de stock'!B11)*1)=1;D11;"")

0
diabolo162 Messages postés 1002 Date d'inscription lundi 28 janvier 2008 Statut Membre Dernière intervention 9 octobre 2018 29
Modifié par diabolo162 le 2/10/2010 à 09:24
La formule marche mais je n'arrive pas a integrer la colonne "P8:P25" dans ta formule.
J'ai essayer ca :
=SI(SOMMEPROD(((INDIRECT(JourGestion&"!B8:B25")*(INDIRECT(JourGestion&"!P8:P25"))='Gestion de stock'!B11)*1)=1;D11;"")
J'ai essayer ca aussi :
=SI(SOMMEPROD(((INDIRECT(JourGestion&"!B8:B25"&"!P8:P25"))='Gestion de stock'!B11)*1)=1;D11;"")

Rien ne fonctionne....

ca marche avec celle ci :
=SI(SOMMEPROD(((INDIRECT(JourGestion&"!B8:B25"))='Gestion de stock'!B11)*1)=1;D11;SI(SOMMEPROD(((INDIRECT(JourGestion&"!P8:P25"))='Gestion de stock'!B11)*1)=1;D11;""))
0
diabolo162 Messages postés 1002 Date d'inscription lundi 28 janvier 2008 Statut Membre Dernière intervention 9 octobre 2018 29
Modifié par diabolo162 le 2/10/2010 à 10:13
Bonjour Pingou,

J'ai besoin de ce résultat en colonne "F" pour calculer par la suite le poids de cet aliment.
La formule prendra en compte uniquement le menu inscrit en "F" et non pas toute la liste d'aliment comme en "B".
Le poids de l'aliment est calculer sur les colonnes "H:AT"

La colonne "F"correspond au nom de mon menu.
La colonne "D"correspond au nom du produit phare du menu.
exemple :
Ananas au sirop ou carottes râpées vinaigrette= Menu
Ananas ou carottes= Produits phares

C'est ce produit qui devra ressortir sur ma feuille "Sortie Lundi"avec son poids.
Je m'apercois qu'il va me falloir une macro pour fusionner sur ma feuil"Sortie Lundi".
En fait il me faut créer qu'une seule feuil de sortie.

Voila j'espere mettre correctement expliquer et merci de ta patience.
0
Le Pingou Messages postés 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426
2 oct. 2010 à 13:35
Bonjour,
J'espère juste que votre méthode de calcul vous donnes des résultats corrects.
La formule en [F9]:
=SI((SOMMEPROD(((INDIRECT(JourGestion&"!b8:b25"))='Gestion de stock'!B9)*1)+SOMMEPROD(((INDIRECT(JourGestion&"!p8:p25"))='Gestion de stock'!B9)*1))>0;D9;"")
0
diabolo162 Messages postés 1002 Date d'inscription lundi 28 janvier 2008 Statut Membre Dernière intervention 9 octobre 2018 29
2 oct. 2010 à 22:27
Merci pour le correctif....

Il me reste plus que la macro a trouver....
J'en ai une qui sert a recopier les lignes sans inclure les lignes vides pour faire une impression mais je n'arrive pas à l'adapter à ma feuil.

Pour l'impression il me faudrait garder la structure de la feuil "Fiche sortie" et copier les lignes des colonnes "F"+"M"ou"P"ou"AF"ou"AI".

Voici ma macro mais elle est pas top celle ci et elle bloque sur "ActiveSheet.Paste":

Sub transfert_auto()

Workbooks.Open Filename:="C:\Users\Alex\Desktop\Fiche Sortie.xls"
' vide le fichier Fiche Sortie
ret = MsgBox("Reinitialiser le fichier de transfert ?", vbYesNo)
If ret = vbYes Then
Rows("2:100").ClearContents
numtsft = 2
Else
' il faut compter le nombre de lignes
Do
numtsft = numtsft + 1
Loop While Range("A" & numtsft).Value > 0

End If

For numlgn = 2 To 800
Windows("Etiquette.xls").Activate
If Range("P" & numlgn).Value > 0 Then
Valeur = Range("P" & numlgn).Value
Windows("Fiche Sortie.xls").Activate
Range("A" & numtsft).Value = Valeur
Windows("Etiquette.xls").Activate
Range("A" & numlgn & ":P" & numlgn).Select
Application.CutCopyMode = False
Selection.Copy
Windows("Fiche Sortie.xls").Activate
Range("B" & numtsft).Select
ActiveSheet.Paste
numtsft = numtsft + 1
End If
Next numlgn
Windows("Sortie.xls").Activate
ActiveWorkbook.Save
ActiveWindow.Close
End Sub
0
Le Pingou Messages postés 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426
2 oct. 2010 à 23:16
Bonjour,
C'est super sympa comme demande, mais votre macro se rapporte à 2 classeurs [Fiche Sortie.xls] et [Etiquette.xls] et sans ces classeurs c'est impossible.
Et ceci vous le prenez dans quel tiroir : Pour l'impression il me faudrait garder la structure de la feuil "Fiche sortie" et copier les lignes des colonnes "F"+"M"ou"P"ou"AF"ou"AI".?
Des indications précises ou un exemple concret sur le fichier concerné me permettrai d'essayer de trouver une solution.
0
diabolo162 Messages postés 1002 Date d'inscription lundi 28 janvier 2008 Statut Membre Dernière intervention 9 octobre 2018 29
Modifié par diabolo162 le 3/10/2010 à 15:46
Désolé pour le fichier manquant.....

J'ai modifier la macro qui fonctionne mais il me reste encore quelques petits détails à régler

voici mes classeurs :
http://www.cijoint.fr/cjlink.php?file=cj201010/cijZtCrnDb.zip

Mes problemes avec la macro sont les suivantes:

- Classeur de "Sortie"

1/ La macro réinitialise toute la ligne "4:800" alors qu'il me faudrait réinitialiser que la colonne "A" & "C" ecar elle me supprimer ma mise en forme des autres colonnes.
2/ Si je valide "yes" la réinitialisation se passe bien. La macro commence bien a la 4éùé ligne.
Le probleme est que si je valide "No" la macro supprime les validations precedentes alors qu'il faudrait qu'elle continue à la suite....
est ce que ca aurait un rapport avec ceci :

Do
numtsft = numtsft + 1
Loop While Range("G" & numtsft).Value > 0


Classeur de "Gestion sortie"</souligne>

1/ La macro ne prend en compte que les quantités de la colonne "Q"
En fait il faudrait que la macro prenne en compte la colonne "N"&"Q"&"AG"&"AJ"suivant s'il y a une valeur dans chacune de ces colonnes.

2/ Je m'apercois que en "G2" j'ai la liste "JourGestion".
J'ai oublier d'intégrer en "G5" une liste déroulante "Midi;Soir"
J'arrive pas a l'intégrer dans la formule. J'ai essayer ca mais ca marche pas :
=SI((SOMMEPROD(($F$2="Midi")*(INDIRECT(JourGestion&"!b8:b25")='Gestion de Stock'!B9)*1)+SOMMEPROD(($F$2="Soir")(INDIRECT(JourGestion&"!p8:p25")='Gestion de Stock'!B9)*1))>0;D9;"")
0
Le Pingou Messages postés 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426
Modifié par Le Pingou le 3/10/2010 à 17:23
Bonjour,
Voir document : https://www.cjoint.com/?kdqu1iW8a4
Salutations.
Le Pingou
0
diabolo162 Messages postés 1002 Date d'inscription lundi 28 janvier 2008 Statut Membre Dernière intervention 9 octobre 2018 29
3 oct. 2010 à 18:14
En fait c'est mon dernier message posté qui est le bon....
Dois je créer un nouveau poste?
0
Le Pingou Messages postés 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426
3 oct. 2010 à 22:10
Bonjour,
Merci pour l'information, je regarderai demain si c'est possible.
Par contre je fais comment avec ceci :
Il faudrait que Les textes colonne "F" et valeurs colonne "M""P""AF""AI" se recopie sur la feuille "Fiche sortie".
Ou le mettre sur la [Fiche sortie]

Et je fais quoi avec le fichier joint au poste ?

Salutations.
Le Pingou
0
Le Pingou Messages postés 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426
3 oct. 2010 à 22:33
Bonjour,
Complément au précédent.
Alors je vais préciser sur quels éléments je me base pour essayer de remplir votre fiche de sortie.
1.- La base est le classeur [Etiquette.xls] avec les feuilles [Fiches], [Lundi .... à ...Dimanche], [Gestion de stock] et [Fiche Sortie].
2.- Sur la base des valeurs de la colonne [F] de la feuille [Gestion de stock] je copie cette valeur et celles des colonnes [M], [P],[AF] et [AI] sur la feuille [Fiche Sortie ].
J'attend encore les précisions sur l'endroit .........correct (DESIGNATION DU PRODUIT, DLC, Quantité, ? , N° LOT, Cuisine , Liaison Froide)
Salutations.
Le Pingou
0
diabolo162 Messages postés 1002 Date d'inscription lundi 28 janvier 2008 Statut Membre Dernière intervention 9 octobre 2018 29
3 oct. 2010 à 23:52
plus j'avance et plus je me rend compte que mon dossier "gestion de stock" manque d'information!!!!
Le dernier dossier comporte la fiche "sortie" et le classeur de "gestion de stock" car j'ai integré une macro pour copier les valeurs sur la fiche "sortie".

Bref tous mes fichiers précédents deviennent obsolète!!!Il manque des éléments importants au bon fonctionnement.

Je te remet mes classeurs que je fais évoluer encore et encore en esperant etre parti dans le bon chemin.

http://www.cijoint.fr/cjlink.php?file=cj201010/cij0EbfZvI.zip

Le fichier de base est "ration":tout commence par lui..

Les valeurs se trouve colonne "G" de la feuille "Gestion de stock"
Il faut recopier ce texte (sans les formules sinon macro marche pas) dans la fiche "sortie" dans colonne "A"
La valeur colonne "BI" (je n'ai pas encore trouver la formule)sera recopier dans la colonne "C" de la fiche de "sortie"
La valeur en "BI" détermine le poid total de marchandise a sortir:
Si les repas normaux font 10 Kg (colonne "P")et les repas régimes 5Kg (colonne "AI")alors en "BI" on doit retrouver la valeur 15 Kg
Le calcule se fait en rapport de la présence de texte en colonne "G" et "AB"
S'il y a du texte (colonne "G"&"AB") le calcule se fait sinon si case vide la valeur reste à zéro.

Merci pour le coup de pouce.
0
Le Pingou Messages postés 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426
4 oct. 2010 à 23:40
Bonjour,
Ma proposition : https://www.cjoint.com/?kexOLJ6atw
0
diabolo162 Messages postés 1002 Date d'inscription lundi 28 janvier 2008 Statut Membre Dernière intervention 9 octobre 2018 29
Modifié par diabolo162 le 5/10/2010 à 06:41
Bonjour Pingou,

Merci beaucoup de ta proposition....Elle fonctionne très bien.
Je me rend compte par exemple que la liste déroulante "Midi/Soir" en "G:5" ne fonctionne pas car j'ai le texte "Midi" et Soir" qui s'affiche en même temps alors que ca devrait être :
soit "Midi"
ou soit le "Soir".
Il faudrait que j'integre une autre condition comme
=SI($G5="Midi")
dans la formule ci dessous:

=SI((SOMMEPROD(((INDIRECT("Ration.xls!"&$D$2&"MiNo"))='Gestion de stock'!B9)*1)+SOMMEPROD(((INDIRECT("Ration.xls!"&$D$2&"MiRe"))='Gestion de stock'!B9)*1)+SOMMEPROD(((INDIRECT("Ration.xls!"&$D$2&"SoNo"))='Gestion de stock'!B9)*1)+SOMMEPROD(((INDIRECT("Ration.xls!"&$D$2&"SoRe"))='Gestion de stock'!B9)*1))>0;D9;"-")


Cela va t'il avoir des conséquence sur la macro car il va falloir que j'exporte 2 données différentes si "Midi" et "Soir" sont dissocier?
0
Le Pingou Messages postés 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426
Modifié par Le Pingou le 5/10/2010 à 16:01
Bonjour,
Désolé, votre liste déroulante fonctionne correctement.

Cela va t'il avoir des conséquence sur la macro car il va falloir que j'exporte 2 données différentes si "Midi" et "Soir" sont dissocier?
Que comprendre ?
La procédure travail exactement selon les critères que vous avez énoncés (dont une copie se trouve sur la feuille du classeur concerné) selon votre choix, donc vous la lancez pour chaque choix. Elle ne réalise aucun cumul de données.
La formule, essayer ceci:
=SI((SOMMEPROD((GestionMiSo="Midi")*((INDIRECT("Ration.xls!"&$D$2&"MiNo"))='Gestion de stock'!B9)*1)+SOMMEPROD((GestionMiSo="Midi")*((INDIRECT("Ration.xls!"&$D$2&"MiRe"))='Gestion de stock'!B9)*1)+SOMMEPROD((GestionMiSo="Soir")*((INDIRECT("Ration.xls!"&$D$2&"SoNo"))='Gestion de stock'!B9)*1)+SOMMEPROD((GestionMiSo="Soir")*((INDIRECT("Ration.xls!"&$D$2&"SoRe"))='Gestion de stock'!B9)*1))>0;D9;"-")
Salutations.
Le Pingou
0
diabolo162 Messages postés 1002 Date d'inscription lundi 28 janvier 2008 Statut Membre Dernière intervention 9 octobre 2018 29
5 oct. 2010 à 17:51
Merci beaucoup Pingou...sympa pour le coup de pouce!
0