Recuperation de données a partir d'un bouton de commande.

Fermé
adnane88 Messages postés 45 Date d'inscription jeudi 11 juin 2015 Statut Membre Dernière intervention 29 juillet 2015 - 16 juil. 2015 à 16:22
adnane88 Messages postés 45 Date d'inscription jeudi 11 juin 2015 Statut Membre Dernière intervention 29 juillet 2015 - 29 juil. 2015 à 13:43
Bonjour tout le monde ,
je travaille sous excel sur un outil charge/capacité des fournisseurs .
1.dans une feuille j'ai mon tableau capacités des fournisseurs .
2. dans une autre feuille j'ai mon tableau charge par fournisseur .
sachant que la capacité et la charge sont données en chiffre d'affaires par semaine car mes deux tableaux sont construit d'une manière horizontale et ils contient des année de 2013-01 jusqu'au 2018-52 (de la 1ere semaine de 2013 jusqu'au semaine 52 de l'année 2018).
mon problème est comme suit :
je veux bien copier dans une 3eme feuille dans un tableau la charge et la capacité d'un fournisseur sélectionne sur une liste déroulante d'une façon dynamique (veut dire que je sélectionne un fournisseur et je click sur un bouton de commande j'aurai la charge et la capacité du fournisseur dans mon 3eme tableau (feuille 3).
merci pour votre aide d'avance
mon fichier excel est disponible sur le lien suivant:
https://www.cjoint.com/c/EGqnQMpbqti

10 réponses

Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 337
17 juil. 2015 à 06:31
Bonjour
Pour partir sur des bases saines, et avant de pouvoir vous aider, il faudrait que vous corrigiez les formules de votre fichier, il y a plein de références circulaires, notamment sur la feuille "Charge par fournisseurs" en ligne 14.
Dans la cellule C5 de la même feuille, vous pouvez inclure cette formule =INDEX(capacité_par_fournisseur!A19:A667;tableau_recup!I9) qui va récupérer le nom du fournisseur sélectionné avec la liste déroulante de la feuille "tableau_recup".
Ensuite pourquoi passer par du VBA alors qu'une formule par cellule du genre RechercheV dans la feuille "tableau_recup" devrait suffire.(et les formules, c'est très dynamique)
Cdlt
0
adnane88 Messages postés 45 Date d'inscription jeudi 11 juin 2015 Statut Membre Dernière intervention 29 juillet 2015
17 juil. 2015 à 14:34
bonjour frenchie83
merci pour votre aide .je tiens a vous informer que le fichier que j'ai partagé ce n'est qu'un exemple identique de mon fichier réel par ce que il contient des données confidentielles .
oui j'ai déjà utilisé la formule recherchev .
le problème se pose ; je sélectionne un fournisseur et je click sur le bouton de commande j'aurai automatiquement la charge/la capacité du fournisseur sélectionné dans le tableau ("tableau_recup").
merci pour votre aide
cordialerment.
0
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 337
17 juil. 2015 à 15:26
RE
le problème se pose ; je sélectionne un fournisseur et je click sur le bouton de commande j'aurai automatiquement la charge/la capacité du fournisseur sélectionné dans le tableau ("tableau_recup"). Quel problème?, Que doit faire de plus le bouton que vous voulez mettre?

J'ai toujours pas compris l'intérêt d'avoir un bouton alors qu'une formule fait très bien l'affaire, à moins que j'interprète mal votre demande.
En sélectionnant un fournisseur avec la liste déroulante, on récupère bien les charges et les capacités.
Donc voici le fichier. Pour ne pas écraser vos formules sur la feuille des charges j'ai mis des valeurs en lignes 15 au lieu de la 14.
De votre côté, avez-vous corriger les cellules avec des références circulaires?
https://www.cjoint.com/c/EGrnwQdtF5w
Cdlt
0
bonjour frenchie83
merci pour ton aide .pour la capacité ça marche impeccable mais pour la la fonction ALEA()*100 je peux l'adapter au lieux de la fonction =SOMME(DECALER(P$9;2;;NBVAL($E$11:$E$15000);)) sur la plage (P10:LO10)
car avec cette fonction je récupéré la somme (en chiffre d'affaire) des commande passées
au fournisseur choisi.
donc ma question est ce que y'a une autre manière de récupérer cette somme (macro) ou bien fonction .
je tiens a te faire joindre un classeur excel tu trouveras a l'intérieure le tableau charge par fournisseur pour mieux t'expliquer .
merci d'avance pour ton aide .
cordialement
0
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 337
20 juil. 2015 à 15:39
Bonjour
la fonction ALEA()*100 je peux l'adapter au lieux de la fonction =SOMME(DECALER(P$9;2;;NBVAL($E$11:$E$15000);)) sur la plage (P10:LO10) Bien sûr, j'avais utiliser la fonction ALEA pour me créer des valeurs quelconques puisque je n'avais pas de données à disposition.
J'attends de voir le tableau pour pouvoir répondre à la question suivante, et les explications qui vont avec.
Cdlt
0
adnane88 Messages postés 45 Date d'inscription jeudi 11 juin 2015 Statut Membre Dernière intervention 29 juillet 2015
20 juil. 2015 à 15:43
re
la je vous ai envoyer mon fichier sur votre adresse perso mais ça ne passe pas ,je lai partagé sur google drive par ce que il dépasse 25 MO .
tu n'as pas une autre merci
0
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 337
20 juil. 2015 à 19:09
Inutile de poster le fichier en entier, quelques lignes du tableau suffisent, juste pour voir comment il est construit, l'essentiel est de bien le commenter en indiquant le plus clairement possible le résultat attendu.
0
adnane88 Messages postés 45 Date d'inscription jeudi 11 juin 2015 Statut Membre Dernière intervention 29 juillet 2015
21 juil. 2015 à 11:51
bonjour frenchie83
mon fichier est disponible sur ce lien
https://www.cjoint.com/c/EGvjVoXxSgi
merci
0
adnane88 Messages postés 45 Date d'inscription jeudi 11 juin 2015 Statut Membre Dernière intervention 29 juillet 2015
21 juil. 2015 à 16:42
re frenchie83
j'essaye votre formule sur mon tableau_recu et j'arrive tjrs pas a recuperer la charge du fournisseur en sélectionnant un fournisseur sur la liste deroulante .
dans tous les cas je vous ai envoyé mon fichier .
merci
0

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

Posez votre question
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 337
22 juil. 2015 à 03:22
Bonjour
La feuille "Charge par fournisseur" du nouveau fichier est différente de celle du précédent fichier, Les charges commencent-elles à la colonne D ou à la colonne P? En ligne 10 ou en ligne 14?
Si il suffit de récupérer simplement les charges de la ligne 10 de la feuille ""Charge par fournisseur", une simple formule fera l'affaire, Dans la feuille "Tableau_reçu" mettre la formule suivante suivant le cas
C7 =charge_par_fournisseurs!D14
ou
C7 =charge_par_fournisseurs!P10
puis à recopier jusqu'à LB7.
Cdlt
0
adnane88 Messages postés 45 Date d'inscription jeudi 11 juin 2015 Statut Membre Dernière intervention 29 juillet 2015
22 juil. 2015 à 11:20
bonjour trenchie83
effectivement les charges commencent en ligne P10 j'ai testé la formule ca a marché mais le problème qui se pose actuellement ;je veux récupérer les cherges de la meme facon que les capacité je choisis un fournisseur sur la liste déroulante et je recupere d'une facon automatique sa charge et sa capacité .actuellement je recupere que la capacité du fournisseur d'une façon dynamique .merci
cordialement.
0
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 337
22 juil. 2015 à 12:03
Bonjour
Je ne demande qu'à vous rendre service, mais il faudrait m'en donner les moyens.
Vous demandez des choses simples mais vous avez le chic de les compliquer au maximum.
Je répète, fournissez un fichier bien structuré, que les feuilles "Capacité par fournisseur" et "Charge par fournisseur" aient le même format, que les calendriers commencent à la même ligne et à la même colonne, que la liste des fournisseurs soit présente sur chacune de ces 2 feuilles, dans la même colonne, etc.. EN CLAIR LES 2 FEUILLES DOIVENT ETRE IDENTIQUES
Une fois que les 2 feuilles seront de formats identiques, il suffira de reprendre la formule que je vous avais déjà fourni pour les "capacités par fournisseur" et de l'appliquer à celle des charges.
Commencez par faire cette mise en forme et renvoyer votre fichier. Ce dernier étant très volumineux, limitez-le à 5 ou 6 fournisseurs, mais j'ai besoin de voir la construction définitive de ce fichier.
Cdlt
0
adnane88 Messages postés 45 Date d'inscription jeudi 11 juin 2015 Statut Membre Dernière intervention 29 juillet 2015
22 juil. 2015 à 12:24
re frenchie83
juste une petite remarque le tableau charge et capacité ne peuvent pas être identique car c'est les exigences du cahier des charges que me confier l'entreprise .moi je suis stagiaire et je suis les consignes de mon tuteur . pour la liste des fournisseurs dans le tableau charge je l'ai ai récupérer par un TCD (par ce que le tableau charge a été construit selon les commandes passées au fournisseurs ) mais par contre le tableau capacité mes fournisseurs je l'ai aient directement dans une colonne je ne sais pas est ce que cette différence de format des deux tableau m'oblige a créer une macro ??
donc pour le format je ne peux rien faire ça me dépasse mais par contre le calendrier je peux le faire .
la liste des fournisseurs je l'ai récupéré du TCD_fournisseur ce dernier est issu de la basse de données principale.
merci pour ton retour
cordialement.
0
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 337
22 juil. 2015 à 12:35
mais par contre le tableau capacité mes fournisseurs je l'ai aient directement dans une colonne QUELLE COLONNE?
0
adnane88 Messages postés 45 Date d'inscription jeudi 11 juin 2015 Statut Membre Dernière intervention 29 juillet 2015
22 juil. 2015 à 12:41
sur la colonne A je l'ai aient recuperé du tableau TCD_fournisseur avec cette formule
=RECHERCHEV(TCD_fournisseur!A4;TCD_fournisseur!$A$4:$A$1000;1;FAUX)
merci
0
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 337
22 juil. 2015 à 13:09
Vous ne m'avez pas compris, ma question était dans quelle colonne se trouve la liste des fournisseurs de la feuille "Charge par fournisseur"
Pour qu'on avance un peu, je vous retourne le fichier d'origine pour que vous compreniez ce que je voulais avec des valeurs bidons.
Maintenant, si le tableau de la feuille "Charge par fournisseur" commence en P10, il suffit de modifier la formule, mais pour cela, il faut répondre à la question (en gras dans le texte)
https://www.cjoint.com/c/EGwlcxidfPw
Cdlt
0
adnane88 Messages postés 45 Date d'inscription jeudi 11 juin 2015 Statut Membre Dernière intervention 29 juillet 2015
22 juil. 2015 à 13:43
re frenchie83
la liste des fournisseur de la feuille charge je l'ai aient récupérer de la base de données principale de l'entreprise .
merci.
Cordialement
0
adnane88 Messages postés 45 Date d'inscription jeudi 11 juin 2015 Statut Membre Dernière intervention 29 juillet 2015
22 juil. 2015 à 13:49
vas y voir message privé merci
0
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 337
22 juil. 2015 à 13:57
la liste des fournisseur de la feuille charge je l'ai aient récupérer de la base de données principale de l'entreprise . . ça je l'avais compris.
SVP, répondez à chacune de mes questions.
Est-ce que le fichier que j'ai renvoyé vous convient?
Faut-il modifier la feuille "Charge par fournisseur"? et prendre celle de votre 2ème envoi (avec le début en P10 au lieu de D14? Si OUI, il me faut connaître dans quelle colonne peut-on mettre la liste des fournisseurs sur cette feuille (il est indispensable de disposer de cette liste dans cette feuille pour que les formules puissent fonctionner.
Cdlt
0
adnane88 Messages postés 45 Date d'inscription jeudi 11 juin 2015 Statut Membre Dernière intervention 29 juillet 2015
22 juil. 2015 à 14:32
re frenchie83
je t'ai tout expliqué dans ce fichier vasy sur la feuille charge par fournisseur et aussi la feuille prise_ecran pour lire mes commentaire .
merci beaucoup pour ton retour
cordialement .
le fichier est disponible sur ce lien
https://www.cjoint.com/c/EGwmErrcoii
0
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 337
22 juil. 2015 à 18:14
On revient bien à ce que j'avais déjà dit au post 11.
On récupère bien la somme de P10 à LO10 de la feuille "charge par fournisseur"
Donc, la formule à appliquer sur la feuille Tableau_recup en D4 est la suivante
=Charge_par_fournisseur!P10
à étirer jusqu'à LC4.
et au changement de fournisseur, le tableau dans la feuille Tableau_recup se mettra à jour automatiquement.
Cdlt
0
adnane88 Messages postés 45 Date d'inscription jeudi 11 juin 2015 Statut Membre Dernière intervention 29 juillet 2015
23 juil. 2015 à 11:57
bonjour frenchie83
merci beaucoup pour votre aide ,la fonction que tu ma donné marche bien sauf que mon problème actuel est comment récupérer les fournisseur du TCD lors que je clique sur le fournisseur dans ma liste déroulante que j'ai dans la feuille tableau_recu.
merci
cordialement
0
adnane88 Messages postés 45 Date d'inscription jeudi 11 juin 2015 Statut Membre Dernière intervention 29 juillet 2015
29 juil. 2015 à 13:42
re frenchie83
merci beaucoup ça a marché je vous remercie beaucoup.
cordialement.
0
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 337
23 juil. 2015 à 12:42
Bonjour
Dans la feuille "Charge par fournisseur" dans la cellule de votre choix, saississez l'une des 2 formules (le résultat est le même)
=RECHERCHEV(tableau_recup!$C$2;TCD_fournisseur!$A$4:$A$622;1;0)

ou
=INDEX(TCD_fournisseur!$A$4:$A$622;tableau_recup!I9)

il ne vous reste qu'à appliquer une formule(recherchev) pour récupérer les valeurs par rapport à ce fournisseur
cdlt
0
adnane88 Messages postés 45 Date d'inscription jeudi 11 juin 2015 Statut Membre Dernière intervention 29 juillet 2015
23 juil. 2015 à 16:31
re frenchie83
j'ai pas bien compris ce que tu veux me dire par ta phrase la ("Dans la feuille "Charge par fournisseur" dans la cellule de votre choix.
est ce que cette cellule ce sera dans la feuille charge pâr fournisseur?? et une cellule quelque conque de mon choix ???
merci pour ton retour
0
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 337
24 juil. 2015 à 05:02
Bonjour
est ce que cette cellule ce sera dans la feuille charge par fournisseur?? OUI
et une cellule quelque conque de mon choix ???
OUI
Dans votre premier fichier le choix du fournisseur se faisait en cellule C5
Dans votre deuxième fichier le choix du fournisseur se faisait en cellule B8
Ne sachant pas laquelle de ces cellules est la bonne, je vous laisse le choix de la cellule pour y appliquer la formule qui permettra de récupérer les valeurs du fournisseur sélectionné.
Bonne journée
Cdlt
0
adnane88 Messages postés 45 Date d'inscription jeudi 11 juin 2015 Statut Membre Dernière intervention 29 juillet 2015
24 juil. 2015 à 10:04
bonjour frenchie83
mais je ne peux pas saisir la fonction sur ma cellule où je sélectionne mon fournisseur dans ma feuille charge par fournisseur car j'ai un filtre dans ce TCD .
merci pour ton retour
Cordialement
0
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 337
24 juil. 2015 à 11:04
j'ai un filtre dans ce TCD, J'ai bien vu qu'il y avait un filtre, mais ce filtre n'est pas activé par la boîte de dialogue de la feuille "Tableau_recup". Si je suis votre raisonnement, si vous choisissez un fournisseur par la boîte de dialogue de la feuille "Tableau_recup", il vous aussi le sélectionner dans le filtre de la feuille "charge par fournisseur" parce que vous passez par un TCD. ça fait une double sélection, c'est pas terrible, mais bon, pourquoi pas, mais dans ce cas il faut remplacer la formule dans la feuille "Tableau_recup"
 =INDEX(TCD_fournisseur!$A$4:$A$622;tableau_recup!I9)
par
=SI(INDEX(capacité_par_fournisseur!A19:$A$500;$I$9;1)<>charge_par_fournisseurs!C5;"sélectionnez le même fournisseur dans la feuille ""charge_par_fournisseurs""";INDEX(capacité_par_fournisseur!A19:$A$500;$I$9;1))

ceci pour être sûr que le même fournisseur à bien été sélectionné sur les 2 feuilles.
Cdlt
0
adnane88 Messages postés 45 Date d'inscription jeudi 11 juin 2015 Statut Membre Dernière intervention 29 juillet 2015
24 juil. 2015 à 12:08
re frenchie83
je viens de saisir cette formule
=SI(INDEX(capacité_par_fournisseur!A19:$A$500;$I$9;1)<>charge_par_fournisseurs!C5;"sélectionnez le même fournisseur dans la feuille ""charge_par_fournisseurs""";INDEX(capacité_par_fournisseur!A19:$A$500;$I$9;1))
dans la cellule B4 de la feuille tableau_recu
c'est ca ce que tu ma demandé de faire nn ?
0
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 337
24 juil. 2015 à 12:08
Voici la macro attendu, avec en B4 le fournisseur sélectionné dans la feuille Tableau_récup", mais je ne peus pas faire mieuxcar sur les 2 fichiers que vous avez envoyez, les emplacements sont différents ainsi que la structure.

Sub RecopieFournisseur()
    Application.ScreenUpdating = False
    Fournisseur = Sheets("Tableau_recup").[B4]
    Sheets("charge_par_fournisseurs").Select
    ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("Fournisseur").ClearAllFilters
    ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("Fournisseur").CurrentPage = Fournisseur
End Sub


Cdlt
0
adnane88 Messages postés 45 Date d'inscription jeudi 11 juin 2015 Statut Membre Dernière intervention 29 juillet 2015
27 juil. 2015 à 15:17
bonjour frenchie83
Au fait dés que je passe a l'exécution de la macro un message d'erreur s'affiche
Erreur d'execution'9' l'indice n'appartient pas a la sélection .
Je suis vraiment besoin de votre aide .
Merci pour votre retour
Cordialement.
0
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 337
27 juil. 2015 à 18:44
Bonjour
l'exécution de la macro un message d'erreur s'affiche Quand vous cliquez sur débogage sur quelle ligne s'arrête t-il?
0
adnane88 Messages postés 45 Date d'inscription jeudi 11 juin 2015 Statut Membre Dernière intervention 29 juillet 2015
28 juil. 2015 à 10:20
bonjour frenchie83
au fait il m'affiche une erreur sur cette ligne
Fournisseur = Sheets("Tableau_recup").[B4]
merci pour ton retour
cordialement
0
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 337
28 juil. 2015 à 12:54
Bonjour
Est-ce que le nom de la feuille est le bon?, est-ce bien Tableau_recup ? si ce n'est pas le bon, il faut remplacer par le vrai nom de la feuille. (le mieux, c'est de faire une copie du nom en double-cliquant sur l'onglet de la feuille et venir coller à la place de Tableau _recup)
Si c'est le bon, alors remplacez la phrase complète par ceci:
Fournisseur = Sheets("Tableau_recup").range("B4").value

cdlt
0
adnane88 Messages postés 45 Date d'inscription jeudi 11 juin 2015 Statut Membre Dernière intervention 29 juillet 2015
28 juil. 2015 à 13:01
re frenchie83
oui c'est le nom exacte .je vais tester l'instruction et je te tiens au courant du resultat
merci encore une autre fois
cordialement
0
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 337
29 juil. 2015 à 13:07
Bonjour
Sur la feuille "tableau _recu", copier en D11
=DECALER(capacité_par_fournisseur!$C$18;EQUIV($B$4;capacité_par_fournisseur!$A$19:$A$637;0);LIGNE()-11)
ou bien
=DECALER([capacité_par_fournisseur]capacité_par_fournisseur!$C$18;EQUIV($B$4;[capacité_par_fournisseur]capacité_par_fournisseur!$A$19:$A$637;0);LIGNE()-11)
et tirer vers le bas.
cdlt
0
adnane88 Messages postés 45 Date d'inscription jeudi 11 juin 2015 Statut Membre Dernière intervention 29 juillet 2015
29 juil. 2015 à 13:43
re frenchie83
merci beaucoup ca a marcher parfaitement bien
cordialement.
0