Besoin de votre conseil pour savoir quel procédé utiliser

Aufeu

XLDnaute Nouveau
Bonjour à toutes et tous,

Je parcours depuis un certains temps votre forum et vous me permettez tout les jours d'apprendre petit à petit des nouvelles fonctionnalité ou de me corriger sur des formules ou codes VBA et je tenais à vous en remercier.

Aujourd'hui je suis bloqué car je ne sais quel astuce utilisé pour compiler des données.
Je vous joint un exemple.

J'ai deux feuilles que j'ai extraits d'un classeur qui en comporte une dizaine.
Sur la feuille nommée BDactions, à l'aide d'un userform assez complet je viens renseigner des actions qui s'incrémentent ligne par ligne, colonne par colonne.
Sur la colonne T vient se copier le numéro de l'action qui sera pour chacune différente. (cela dépend des mois etc..)
Sur la colonne U vient se copier en mode "CONCATENER" les noms des participants à ces actions. cela provient d'une listbox avec sélection multiple.

Je pourrai au plus fort compter environs 500 à 1000 actions en fin d'année.

Jusque là, tout va bien.

Là ou ça ce complique c'est que je souhaite importer la référence de l'action devant chaque participant y ayant participé et ce dans la feuille BDsalariés. (comme je vous le met dans le résultats souhaité)

Cette liste de salariés (fictive dans mon fichier exemple) pourra évoluer au fur et à mesure des mouvements de personnels de l'entreprise avec des rajouts, départs etc...
Je mettrai également en place un tir automatique ABC à chaque modif de cette liste. (ça je sais faire pas de soucis)

Malgré mes recherche sur le forum, je n'arrive pas à comprendre la logique à utiliser pour répondre à ma question.
Ma question : quel méthode, outils ou procédure dois-je utilisé pour réussir cette actions de copie sans "blanc" ?

Merci de votre aide !
Aufeu
 

Pièces jointes

  • Classeur exemple Aufeu.xlsm
    174 KB · Affichages: 57
Dernière édition:

Dranreb

XLDnaute Barbatruc
Re : Besoin de votre conseil pour savoir quel procédé utiliser

Bonjour.

Je me fabriquerais un tableau interne à raison d'une ligne par nom pris dans la colonne U de BDactions et éclatés par un Split(…,";"), puis en déterminerais une collection de collections imbriquées au moyen d'une fonction GroupOrge très pratique que j'ai écrite. Le classement par Prénom & Nom serait fait au passage. Faudrait-il conserver les lignes de noms de BDsalariés qui ne figureraient plus dans BDactions ?
(Je demande ça à cause des colonnes supplémentaires Fonction Pôle Agence)
P.S. Oups ! Rien dit ! Les colonnes D:F étaient masquées de ma vue…
Ah oui, mais les quels on prend pour un nom mentionné dans plusieurs lignes où ils diffèrent ? Ceux trouvés dans la dernière ligne rencontrée qui le concerne, ou dans la première ?
 
Dernière édition:

Aufeu

XLDnaute Nouveau
Re : Besoin de votre conseil pour savoir quel procédé utiliser

Re,

Donc super ta réponse.
Je n'aurais jamais réussis à écrire un tel code complexe que j'ai déjà pas mal de difficulté à le comprendre.
Ça me laisse vraiment sur le derrière une telle écriture ! J'ai du temps pour apprendre lol !
Pour être complet il faut que je t'apporte d'autres éléments.

Au fait, ma feuille BDsalariés me sert de liste pour fournir une listebox d'un userfom. Une fois les noms sélectionnés ils sont ensuite inscrit en feuille BDactions dans la case que tu connais.

Tu me conseilles de déplacer ma liste nécessaire à ma listbox sur une new feuille ?
et de lancer une comparaison?
Mon idée c'est ensuite de monter un userform afin de chercher un salarié (ayant ou pas eu droit à une actions) et de pouvoir rapidement trouver le nombre d'actions auxquelles il a participé et pourvoir retrouver le compte-rendu, disponible lui en lien hyper texte dans la colonne Q du BDactions. (ça je vais le faire dans un second temps)

@telire

Aufeu
 

Dranreb

XLDnaute Barbatruc
Re : Besoin de votre conseil pour savoir quel procédé utiliser

Je ne vous suis plus du tout. Si vous avez besoin de garnir une ListBox ou un ComboBox (je préfère ces derniers) il faut à mon avis en calculer la List dans l'Userform tout simplement et pas dans une feuille. À ce compte là vous me faites penser à l'utilisation possible d'un dictionnaire arborescent de mots clés… J'ai un module pour les fabriquer facilement si ça vous intéresse.
Mais bon, je n'y comprends plus rien. Je ne sais plus laquelle des deux feuille est la source des données et l'autre le résultat.
Peut être vous faudrait-il seulement une base de données avec un seul renseignement dans chaque colonne, je ne sais pas. J'ai aussi un module de classe pour gérer automatiquement des ComboBox liés dont les List sont à prendre de diverses colonnes d'un même tableau.

En tout cas je n'aurais besoin, par exemple, pour un Userform, de rien d'autre que la feuille BDactions pour afficher en ordre alpha sans doublon dans un ComboBox tous les noms figurant dans la colonne U, et afficher ensuite instantanément dans une ListBox tous les numéros de suivi concernant celui choisi.
 
Dernière édition:

Discussions similaires

Réponses
6
Affichages
732

Statistiques des forums

Discussions
314 645
Messages
2 111 536
Membres
111 184
dernier inscrit
amiko