Gestion et consolidation de stocks

Signaler
-
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
-
Bonjour a tous,

J'aurais besoin d'un peu (voire beaucoup ) d'aide. Ca fait un petit bout de temps que je m'aide des forums pour apprendre ce que je peux du VB. Mais la, je suis completement bloque. C'est un peu complexe pour moi.
Alors voila, je vous ai joint un fichier.
Sur la premiere page, "Menu", il y a une liste de tous les magasins (avec certains a creer car des ouvertures de magasins sont prevues) et leur assortiment. Ils peuvent en avoir qu'un pour la taille ( mais par exemple, le 101 cumule 100 et 101 ou le 102 cumule 100, 101 et 102) et peuvent en cumuler pour la catchment area. (Ces assortiments peuvent changer, c'est pour cela qu'il faut l'indiquer pour chaque magasin)
Sur le deuxieme feuillet, il y a tous les stocks, que j'importe via une macro. Jusque la, pas de soucis.
Ensuite, chaque magasin a son feuillet. Dans ces feuillets, je voudrais qu'il y ait que les produits (un produit = une ligne) des assortiments concernes pour chaque magasin.
Et pour finir, je voudrais que chaque feuillet soit enregistre separemment avec le nom du magasin dans un meme dossier (pret a etre envoye).
Pour la suite, il s'agit de la consolidation, je pense pouvoir m'en tirer avec une macro et des vlookup.
Alors pourriez-vous m'aider?

Je vous remercie et bonne journee a tous!

Le lien pour le fichier :
http://www.cjoint.com/?3FklvBZqLEg

9 réponses

Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
234
Bonjour,
Seuls les moins prudents ouvriront ton fichier (raisons de sécurité)
Si tu veux de l'aide, il va te falloir :
- rester technique
- isoler ta (une seule par discussion) difficulté spécifique et l'exposer techniquement (ici on ne parle que de cellules, plages et autres objets Excel, sans même préciser à quoi ils correspondent)
- montrer le bout de code tenté pour résoudre cette SEULE difficulté.
Merci de bien vouloir te conformer à cette règle.


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.

Bonjour,

Merci pour ta reponse!
Ma difficulte est de faire une macro pour que je decrivais dans mon premier message. Je vais essayer d'etre plus precis et technique.
Je vais prendre l'exemple du premier magasin par exemple, "Sweifieh" en C28.
Pour l'instant, il possede les assortiments 101 et 150.
Je veux que ma macro puisse prendre tous les produits qui concernent ces assortiments pour les copier sur le feuillet du magasin Sweifieh.
Sachant que pour le premier assortiment, 101 veut dire qu'il comprend 100 et 101 (102 contient 101 qui contient 100). Et pour le second assortiment, 150, un magasin peut en contenir 3 differents qui seront independants (aucun n'inclue l'autre).
Donc la, ma difficulte est surtout de gerer le filtre, car c'etait ma premiere idee, de faire un filtre pour copier puis coller. Car je veux tous les produits en 100 et 101 (pour Sweifieh) et tous les produits en 150. Or comme les produits 150 ne sont pas en 100 ni 101, en appliquant un filtre, je masquerais l'un ou l'autre. (je ne suis pas du tout familie avec le xlAnd et xlOr).

J'espere avoir reussi a etre un peu plus clair et technique en exposant correctement mon probleme et que tu pourras m'aider..
Pour mon fichier, il est preferable que je l'upload directement en xlsm?

Merci!! :)
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
234
J'espere avoir reussi a etre un peu plus clair et technique

Non (surtout en ce qui concerne l'adjectif "technique").
Rappel :
isoler ta (une seule par discussion) difficulté spécifique et l'exposer techniquement (ici on ne parle que de cellules, plages et autres objets Excel, sans même préciser à quoi ils correspondent)

Pour mon fichier, il est preferable que je l'upload directement en xlsm?

Non ! pas de classeur, mais uniquement (et ici, entre balises code) la partie de ton code écrit pour tenter la résolution de cette seule difficulté.

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.

Bon.. je suis completement a cote de la plaque.. desole..
Mon probleme c'est que je n'est pas une once de debut parce que je ne vois pas comment debuter. Par contre je debute en VBA :)
Donc je veux appliquer un filtre (ou tout autre technique que je ne connais pas) sur un feuillet "source" avec comme critere la plage de cellules comprises entre entre N24 et Q24.
Est-ce que c'est mieux? :)

Je precise, mon filtre s'applique sur le feuillet B. Ou les colonnes sont sujettes a changement dans le temps. Et les Criteres sont sur la plage N24:Q24 du feuillet A.
Il faudrait donc peut etre d'abord faire un search..
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
234
A ce stade et compte tenu du fait que tu es débutant :
Intéresse-toi (rubriques à lire dans ton aide VBA) à ces points :
- parcours en boucle d'une plage de cellules (la plupart des discussions VBA sur ce forum contiennent un tel exemple de parcours)
- méthode Find
- fonction WorkSheetFunction.Countif
Puis (après cette lecture) : exerce-toi à des petits tests divers d'application de ces instructions, méthodes et fonctions.
Une fois ainsi aguerri, reviens avec un essai de résolution de ton problème réel.
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.

Merci pour ta reponse.
Je ne vois pas trop ou tu veux en venir avec un countif...
Dans un premier temps, pour selectionner la bonne colonne, je me suis dit, pourquoi ne pas faire comme ca.. forcement ca ne fonctionne pas..
Sub MacroConso()

Dim a As String, b As Range, c As Range, d As Range

a = Range(N24)
b = Range(C24)
c = Sheets(b).Find(a, 1, 1, 1, 28)
d = Range(c).End(xlDown).Select

End Sub

Bonjour,

Vu ton code et ce que tu veux faire, je pense que CETTE PAGE te sera bien utile.



Cordialement


CF2i - Guadeloupe
Ingénierie Informatique
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
234
Je ne comprends pas ton utilisation de Find, ni même cette ligne
Range(c).End(xlDown).Select

Countif te permet de savoir très rapidement si occurence ou non
Tu ne peux développer sans apprendre ces bases.
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.