IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

[VBA-E] Gestion de Stock- Extraction de lignes à partir d'un tableau Excel


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Inscrit en
    Mai 2006
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 23
    Points : 2
    Points
    2
    Par défaut [VBA-E] Gestion de Stock- Extraction de lignes à partir d'un tableau Excel
    bonjour,

    comme le titre l'indique, je suis actuellement stagiaire dans une graosse entreprise. Je travaille sur les réappro d'une usine où travaillent des handicapés.
    L'entreprise utilise des logiciels propres tels que I2 SCP, Business Object, Euroms II, Escher, pour gérer leurs stocks.

    I2 est un logiciel qui permet notamment d'extraire tous les jours des ordres de réappro. qui seront passés aux usines.

    Le problème:
    mOn usine n'est pas vraiment informatisé...je dois donc rechercher manuellement dans le systèmes les ordres de réappro passés, pour réaliser un planning de production manuelle que j'envoie à mon usine. J'etudie donc mes 271 produits l'un apres l'autre...

    Donc voici mon plan:
    1/ Le logiciel I2 génère quotidiennement un fichier excel représentant tous les codes des mes produits ainsi que la liste des ordres réappro (dates et quantités) pour chacun d'entre eux. Un même produit peut avoir plusieurs ordres de réappro, vu que tant qu'ils n'ont pas été produits, ils restent dans le système. et comme mon usine a tjs été géré manuellement, certains ordres de réappro existent depuis plusieurs années car ils ont été" oubliés, jusqu'au jour où l'on sera en rupture de stock et qu'ils remonteront à la surface...

    2/ donc mon but etait de créer un programme sur visual basic à partir d'excel. Je precise que je n'ai pas l'application propre Visual Basic, je ne l'atteint que
    par : Excel ou Access / Outils / Macros / Visual Basic Editor.
    Ce programme serait le suivant:
    --> J'entre une date
    --> le programme va chercher dans mon tableau Excel toutes les lignes de réappro qui ont été crées par I2 depuis cette datte
    --> Création d'un nouveau tableau avec uniquement ces lignes

    en joint: le tableau excel listant tous les ordres de réappro. C'est dans ce tableau que je voudrai selectionner certains PO en foinction d'une date que j'aurais rentré.

    3/ Une fois que j'aurais isolé les ordres de réappro récent (je souhaite ainsi nettoyer du plus récent au plus ancien),
    Je souhaite rentrer automatiquement dans un planning de production dont je vous ai joint un exemple tous les ordres de réappro que je viens d'obtenir (ici il est en format word, mais normalement il est sous Excel!).
    AInsi par ex. pour un ordre X concernant un produit A02, je souhaiterais qu'en lancant le programme, l'ordre X ainsi que sa quantité viennent s'inscrire automatiquement dans les cellules correspondantes sur le planning de production à la ligne du produit A02.

    Voila, c'est terminé!
    Je ne sais pas si j'ai été tres clair car j'avoue que je n'apprend la programmation que sur le tas, et la justement cela depasse mes compétences. C'est pour cela que je vous demande votre aide.
    des conseils, des pistes...

    Si vous avez des questions n'hésitez pas.

    Merci.

    Benoit
    Fichiers attachés Fichiers attachés

  2. #2
    Membre actif Avatar de malhivertman1
    Inscrit en
    Avril 2005
    Messages
    337
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 337
    Points : 221
    Points
    221
    Par défaut
    Essaye d'expliquer ton probleme dans ton titre, en precisant au debut le langage entre crochet ex : [VB6], sinon personne ne va venir t'aider, surtout avec un titre pareil..

    Tu as la possibilité d'éditer ton message precedent pour changer ce que tu veux.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    932
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 932
    Points : 448
    Points
    448
    Par défaut
    Ici le tag serait plutot [VBA-E]

    sinon essaye de faire un code et dis où tu bloque car là on a l'impression que tu nous demande de tout faire

  4. #4
    Candidat au Club
    Inscrit en
    Mai 2006
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 23
    Points : 2
    Points
    2
    Par défaut
    merci pour l'info!
    c'est mieux maintenant?

  5. #5
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Points : 24 327
    Points
    24 327
    Par défaut
    Citation Envoyé par Elstak
    sinon essaye de faire un code et dis où tu bloque car là on a l'impression que tu nous demande de tout faire
    J'ai eu exactement la même impression désagréable
    N'oubliez pas de cliquer sur quand vous avez obtenu ou trouvé vous-même la réponse à votre question.
    Si vous trouvez seul, pensez à poster votre solution. Elle peut servir à d'autres!
    Pensez aussi à voter pour les réponses qui vous ont aidés.
    ------------
    Je dois beaucoup de mes connaissances à mes erreurs!

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    932
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 932
    Points : 448
    Points
    448
    Par défaut
    Yep ca attirera plus de monde que "je debute A l'AIDEEE"

    mais le tag de référence est [VBA-E] (visual basic for application Excel)

    sinon gestion des stock comme titre c'est bien mais pas assez précis. faudrait un problème du genre : "Gestion de dates" (enfin je dis n'importe quoi c'est juste un exemple).

    Commence deja par 1 seul de tes objectif et balance pas tout d'un coup sinon tu va décourager ceux qui veulent t'aider et t'embrouiller toi meme !

  7. #7
    Candidat au Club
    Inscrit en
    Mai 2006
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 23
    Points : 2
    Points
    2
    Par défaut
    c'est clair que je me suis mal expliqué et je m'en excuse...

    En fait, j'ai commencé a bosser dessus.

    j'ai créer l'interface utilisateur qui est le plus facile a faire, il faut l'avouer

    j'arrive a voir le lien entre tous les objets.

    Le probleme, comme je debute sur VB, est que je ne connais pas toutes les fonctions, notamment celle pour extraire des lignes d'un tableau excel....

    Dois je l'ecrire dans la procédure de ma zone de texte ou dans celle de mon CommandButton?

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    932
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 932
    Points : 448
    Points
    448
    Par défaut
    ou dans celle de mon CommandButton?
    Je suppose que t'as un userform?

    sinon ton code est biensur dans ton userform ou dans un module dans lequel tu crées une Sub que tu appeleras (dans l'userform).

    Tu veux extraite les lignes d'un tableau excel?? dans quel but ? tu veux faier quoi avec leur contenu?

  9. #9
    Candidat au Club
    Inscrit en
    Mai 2006
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 23
    Points : 2
    Points
    2
    Par défaut
    Je suppose que t'as un userform?
    oui effectivement!

    oui je voudrai en fait extraire des lignes d'un tableau excel existant.
    Le critère est une date (ex: > mois/jour/année).

    Je souhaiterais que les lignes selectionnés soit mise a part sur une autre feuille excel, ou que les autres non selectionées soit effacées.

    J'aimerais rajouter que loin de moi l'idee de vous demander de tous faire! Au contraire, ca me permet de decouvrir des nouvelles connaissances, et ca fait jamais de mal de reflechir.
    Mais je voulais tout de meme savoir si ce que je souhaite est realisable sur leVisual basic editor sd'excel

  10. #10
    Membre régulier
    Inscrit en
    Mars 2006
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 72
    Points : 78
    Points
    78
    Par défaut
    30 minutes et c est fini

  11. #11
    Membre régulier
    Inscrit en
    Mars 2006
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 72
    Points : 78
    Points
    78
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    for i = 1 to nbreligne
     
    if sheets("feuille1").cells(i,colonnedesdates)=date then
     
    pol(g,0) = ce que tu as besoin
    pol(g,1) = ce que tu as aussi besoin
     
    g=g+1
    end if
     
    next i

  12. #12
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    932
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 932
    Points : 448
    Points
    448
    Par défaut
    Mais je voulais tout de meme savoir si ce que je souhaite est realisable sur leVisual basic editor sd'excel
    Oui.

    donc pour les date il s'agit d'un simple copier/coller. Apres si tu veux supprimer ce qui ne t'interesse pas ou garder ce qui t'interesse c'est toi qui voit !

    Soit tu as besoin de ce qui ne t'interesse pas (pour plus tard ou pour ton entreprise) et là tu copie ce que tu veux ailleurs, soit t'en a pas besoin et tu peux le virer. Ca depend de ton cas

    Pense déjà de quelle manière tu va ensuite traiter les date que tu garde, tu garde des lignes completes? que va tu faire sur ces lignes?

    Ptits conseils : utilise un peu l'editeur de macro d'excel pour le code simple (style copier coller etc...)
    pour les date, interesse toi à DateSerial t'en aura surement besoin quoi que tu fasse avec ces dates (ahhh, le date serial, hein megaxel?? )
    si tu comprend pas la derniere parenthese c'est normal

    allez au boulot

  13. #13
    Membre régulier
    Inscrit en
    Mars 2006
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 72
    Points : 78
    Points
    78
    Par défaut
    ouais tu ne devrais pas avoir trop de mal je pense en plus avec Elstak a tes cotes

  14. #14
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    932
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 932
    Points : 448
    Points
    448
    Par défaut
    hmhm serait ce ironique? !!

    attent un peu que je te choppe !!

  15. #15
    Expert confirmé Avatar de illight
    Homme Profil pro
    Analyste décisionnel
    Inscrit en
    Septembre 2005
    Messages
    2 338
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Analyste décisionnel
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 338
    Points : 4 295
    Points
    4 295
    Par défaut
    L'éditeur de macro d'Excel est très pratique pour débuter, comme l'a dit Elstak ça te permettra de savoir les principales fonctions à utiliser pour tout ce que tu veux faire

    Bon courage pour ton projet
    1. Avant de poster, et http://www.developpez.com/sources/
    2. Lors du post, n'oubliez pas, si besoin les balises CODE => voir ici pour l'utilisation
    3. N'oubliez pas le
    4. N'oubliez pas le si la réponse vous a été utile !

  16. #16
    Candidat au Club
    Inscrit en
    Mai 2006
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 23
    Points : 2
    Points
    2
    Par défaut
    bon ben je vous remercie pour vos réponses rapides messieurs,

    je m'y mets des a present

    parcontre, peux tu me dire ce qu'est vraiment la fonction "pol" stp?

    en tt cas, merci!

  17. #17
    Membre régulier
    Inscrit en
    Mars 2006
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 72
    Points : 78
    Points
    78
    Par défaut
    hou non pas le moins du monde, je veux dire que tu es vif dans les messages lol

    en plus je voulais mettre cet emoticone mais je me disais qu avec ce sourrire tu penserais que c etait ironique alors j ai penche pour le clin doeil mais rien n y fait.

    donc je penche pour celui la

  18. #18
    Membre régulier
    Inscrit en
    Mars 2006
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 72
    Points : 78
    Points
    78
    Par défaut
    ha desole pol c est pas une fonction c etait juste un tableau pour toi enregistrer toutes les donnees de ta page acces et pouvoir les recopier apres

    par exemple

    pol (1,1)= dateproduit1
    pol(1,2)=nomproduit1
    pol(2.1)=dateproduit2
    ....

    c est juste une variable en fait

    j ai la mauvaise manie d utiliser des noms de variables qui n ont jamais aucun rapport et c est une facheuse habitude

  19. #19
    Candidat au Club
    Inscrit en
    Mai 2006
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 23
    Points : 2
    Points
    2
    Par défaut
    bonjour messieurs,

    j'ai pas mal avancé grace a vos aides.
    Je viens de finir de creer ma fonction sur un module de mon workbook excel.
    Mais je voulais savoir comment le lier avec mon bouton "ok" figurant sur ma UserForm?
    Dois je juste ecrire "Function SelectionPO()
    End Function"
    Dans la procédure CmdOk figurant sur mon code?

  20. #20
    Membre actif Avatar de malhivertman1
    Inscrit en
    Avril 2005
    Messages
    337
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 337
    Points : 221
    Points
    221
    Par défaut
    Dans le code de ton bouton, tu apel la fonction que tu as faite en mettant juste
    SelectionPO
    ou
    Call SelectionPO

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 3 123 DernièreDernière

Discussions similaires

  1. Réponses: 4
    Dernier message: 27/03/2015, 09h10
  2. [XL-2010] Requête Excel pour l'extraction des données à partir des autre fichiers Excel
    Par jihed saidaoui dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 13/03/2015, 09h23
  3. Réponses: 10
    Dernier message: 10/10/2008, 13h22
  4. Réponses: 13
    Dernier message: 16/05/2008, 10h13
  5. Gestion de stock en VBA
    Par Mmmuzik dans le forum VBA Access
    Réponses: 20
    Dernier message: 13/11/2007, 15h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo