VBA compter pour inserer

lucieaup -  
ccm81 Messages postés 11033 Statut Membre -
Bonjour à tous,

Je viens ici car j'ai un problème dans la resolution d'une de mes macros.

Je voudrais compter les composants d'un lot pour inserer le nombre correspondant de lignes et mettre les lots dans chaque ligne. ( Pour créer une sorte de pyramide historique).

J'ai essayé de faire un code qui me compterai le nombre de lots ( séparés par le tiret du 6) et mettrait la valeur dans une colonne puis un autre qui lirait ce nombre pour y inserer le bon nombre de lignes.
J'ai une erreur ca ne fonctionne pas.

Pour être plus claire j'ai mis un fichier en pièce jointe. Par exemple, pour la ligne 13 en jaune le numéro de lot colonne X a deux composants colonne AC je voudrais que sur ma feuille databse, je retrouve ce numéro de lot sur deux lignes avec un composant chacunes.

Est ce que quelqu'un aurait une correction pour mon code ou une solution fonctionelle?

Merci beaucoup

https://www.cjoint.com/c/HGnhKm3NEb6

7 réponses

  1. ccm81 Messages postés 11033 Statut Membre 2 434
     
    Bonjour

    J'ai allégé un peu le fichier
    Le code est dans le Module 2
    Ctrl+k pour lancer la macro ... à tester
    https://www.cjoint.com/c/HGotOMSCAlB

    Cdlmnt
    1
    1. Lucieaup
       
      Bonjour,

      Merci de votre réponse. Par contre la macro se lance bien mais elle ne met qu'un seul batch et un composant, si jamais j'ai deux composants je ne les vois pas. Si j'ai deux composants, il faudrait donc que j'ai deux lignes et ca ne fonctionne pas.

      Je loupe quelque chose?

      Merci
      0
    2. Lucieaup
       
      Re bonjour,

      En fait si c'est bon ca fonctionne avec deux petits changements. merci beaucoup!

      Bonne journée
      0
  2. ccm81 Messages postés 11033 Statut Membre 2 434
     
    Je ne sais pas si j'ai tout compris
    J'ai repris/complété ta procédure FinalBatch et l'ai mise dans Module 2
    https://www.cjoint.com/c/HGtnGsjPKdB
    A tester
    Ctrl+k pour lancer la macro

    Cdlmnt
    1
    1. lucieaop
       
      Bonjour, Merci pour votre réponse, désolée de revenir si tard, j'ai pris quelques jours de congés et je n'avais pas de réseau...

      Je ne peux pas accéder au lien, il n'est pas valide. J'ai sans doute mis trop de temps à cliquer dessus, pourriez vous me le redonner?

      merci
      0
  3. ccm81 Messages postés 11033 Statut Membre 2 434
     
    https://mon-partage.fr/f/nzityrtV/
    1
    1. lucieaup
       
      Merci c'est exactement cela que je voulais!

      merci beaucoup!
      0
    2. ccm81 Messages postés 11033 Statut Membre 2 434
       
      De rien

      Si c'est fini, peux tu mettre le sujet à résolu (en haut à droite, la roue dentée)

      Bonne fin de journée
      0
  4. Lucieaup
     
    Bonjour,

    Un dernière question, je voudrais modifier un peu la macro et qu'elle ne fasse le calcul que pour les batchs mentionnés en colonne A de mon onglet "database" j'ai essayé de le changer dans votre code mais je n'arrive pas à le faire marcher. Pourriez vous encore m'aider un peu?

    Merci
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. ccm81 Messages postés 11033 Statut Membre 2 434
     
    ne fasse le calcul que pour les batchs mentionnés en colonne A de mon onglet "database"
    Quel calcul ? La macro ne fait aucun calcul et se contente de remplir les colonnes A et B avec les données des colonnes X et AC de la feuille ZP0CL
    0
    1. lucieaup Messages postés 18 Statut Membre
       
      Oui désolée, je n'utilise pas les bons termes, je voudrais qu'elle remplisse la colonne B data base avec les données de la colonne AC mais en fonction des valeurs de la colonne A de la feuille database ( La colonne A est remplie avec une macro qui ne prend que les infos que je veux dans la colonne X de l'onglet ZPOCL)

      Est ce que c'est plus clair?

      Merci
      0
  7. ccm81 Messages postés 11033 Statut Membre 2 434
     
    Pas plus clair !
    Actuellement, la macro transfère
    - dans la colonne A de la feuille Database les Batch (colonne X) de la feuille ZP0CL éventuellement dupliqués
    - dans la colonne B de la feuille Database les PreviousBatch (colonne AC) de la feuille ZP0CL dans la/les ligne/lignes correspondant à leur Batch

    La colonne A est remplie avec une macro qui ne prend que les infos que je veux dans la colonne X de l'onglet ZPOCL
    c'est là que ça coince !

    Le plus simple, renvoies mon fichier (plus léger) avec des explications détaillées et des exemples de résultats attendus.

    Cdlmnt
    0
  8. lucieaup Messages postés 18 Statut Membre
     
    Bonjour,

    Actuellement, la macro transfère
    - dans la colonne A de la feuille Database les Batch (colonne X) de la feuille ZP0CL éventuellement dupliqués
    En fait je voudrais qu'elle ne transfère que les batchs terminaux que je lui ai fait chercher grace à la macro nommée final batch dans le module 1
    Ca remplit la colonne A avec les batchs dont j'ai besoin.

    - dans la colonne B de la feuille Database les PreviousBatch (colonne AC) de la feuille ZP0CL dans la/les ligne/lignes correspondant à leur Batch je voudrais qu'elle fasse la même chose mais seulement pour les batchs qui sont rentrés dans la colonne A de l'onglet database

    Voila mon fichier avec les macros dedans, si vous effacez le contenu des colonnes de la feuille databse et faites tourner la macro final batch vous aurez juste les batchs sur lequels je veux l'historique.

    J'espère que c'est mieux.

    Merci beaucoup pour votre temps.

    Lucie
    0