Transfert de donnée d'un Userform à un autre

piwwwa

XLDnaute Junior
Bonjour le forum,

Je rencontre des problèmes pour finaliser mon projet de gestion de la formation, en effet j’ai quelque souci dans le passage de mes donner d’un usf a un autre, alors je me tourne vers vos grande connaissances !

Mais problèmes sont les suivants :
- Dans le cas d’une remonté multiple de ligne par le biais de l’usf recherche (sélection Libellé 1), quatre des cinq onglet ce remplisse à la perfection, mais j’ai encore un problèmes avec le cinquième, l’onglet formateur interne, qui se remplit mais avec parfois des décalages de colonnes et certaines info qui ne remonte pas du tout.
- Le deuxième est que quand la listbox de l’usf recherche ne devrait afficher qu’une ligne (sélection libellé 5), une erreur d’exécution 9, l’indice n’appartient pas à la sélection apparait.
- Et enfin j’ai un problème en cas de double clic sur une ligne du listBox, à savoir que tout marche très bien pour trois page du multiform (logistique, formation, éléments annexes). Mais pour la page stagiaire au lieu de n’avoir qu’une ligne de rempli en totalité les éléments se disperse sur plusieurs lignes.

Le fichier: (c) CJoint.com, 2012

Un grand merci à tous les courageux qui lancheront sur mon problème.
 

Paritec

XLDnaute Barbatruc
Re : Transfert de donnée d'un Userform à un autre

Re Piwwwa le forum
l'utilisation d'une listbox ne changerait rien à cela
dans la cas d'un ajout tu ajouterais les lignes qui n'existaient pas dans la listbox dans la feuille Base et voilà et la feuille formation elle resterait remplie comme avant
Et au fur et à mesure de l'ajout des lignes dans la listbox, tu ajouterais les lignes directement dans la feuille Base
a+
Papou:eek:
 

Paritec

XLDnaute Barbatruc
Re : Transfert de donnée d'un Userform à un autre

Bonjour Piwwwaa le forum
je viens de regarder d'un peu plus prêt ton ???? (fichier tu dis toi), et plus j'avance plus je suis sur le cul.
Il n'y a rien de prévu pour retrouver tes données!!! je ne parle pas des variables multiples pour la même condition, surtout au chargement de "Modification".
Bref voilà la modification pour le double clique sur une ligne et pour le chargement de ta feuille stagiaire, là ou il faut.
Maintenant j'ai bien compris que tu ne veux pas changer de manière de faire, mais avoir un fichier qui se limite à 13 lignes et pour moi une crétinerie.
Tu as 7 stagiaires aujourd'hui, mais demain ?? hypothèse tu as 15 stagiaires tu fais quoi???
Bref cela ne règle en rien l'enregistrement des données modifiées, j'ai pas encore mis le nez dans le code du bouton mais j'ai déjà peur avant de commencer!!!!
ton fichier avec les modifs
a+
Papou:eek:
 

Pièces jointes

  • Piwwwaa V6.zip
    193.6 KB · Affichages: 33

Paritec

XLDnaute Barbatruc
Re : Transfert de donnée d'un Userform à un autre

Re Pwwwa le forum
bon j'espère que tu as testé les premières modifs
voilà pour les enregistrements des modifications et des ajouts à toi de tester
a+
Papou:eek:
 

Pièces jointes

  • Piwwwaa V7.zip
    211.2 KB · Affichages: 37

piwwwa

XLDnaute Junior
Re : Transfert de donnée d'un Userform à un autre

Bonjour Paritec et le forum,

Ecore un grand merci pour ton aide.

Effectivement avec les modifs que tu as déjà apporter je dois reconnaitre que le « fichier » est plus clair !

Alors j’ai encore quelques petites questions et problèmes. Tout d’abord j’allais modifier ton code d’enregistrement en créant une deuxième variable pour l’enregistrement des formateur interne (ComboBox 67 à 74), en reprennent le même principe que celle que tu avais écrite, mais ensuite je me suis dit qu’avant de risquer de récrire des choses à rallonge et d’abimer ton code y fallait mieux que je te demande si c’est comme ça que je devais procéder ?

Après je rencontre un autre problème avec les formateurs interne. En effet, dans le cas d’un double clic il faudrait quand fonction de la colonne 38, certaines infos soit renvoyer soit dans la page stagiaire comme actuellement soit dans la page formateur interne, dans ce cas-là mon idée première serait de reprendre une condition du style :
If Me.ListBox1.List(mes_valeurs_listbox1, 37) = "O"
Mais là encore je pense qu’il faut mieux que je te demande.

Enfin dernier point, il va y avoir des infos incomplète dans l’onglet base prev que je souhaiterais modifier de la même façon pour ensuite les enregistrer dans l’onglet base et supprimer la ou les lignes correspondante dans l’onglet base prev ; Pour cela je pensais dupliquer les userform de recherche et l’usf 10. En modifient l’usf de recherche pour que celui si aille maintenant « lire » le contenu de la base prev ; et en modifient l’enregistrement de l’usf 10 de sorte à ce que lui ci en plus d’enregistrer dans l’onglet base supprime la ou les lignes qui ont était charger / transférer de l’onglet base prev. Est-ce que cela te parait possible et le mieux adapter, pour rester dans la même logique que le « fichier » actuel .

Encore un grand merci pour ton aide.
 

Paritec

XLDnaute Barbatruc
Re : Transfert de donnée d'un Userform à un autre

Bonjour Piwwwa le forum
Est-ce que tu te rends compte du ridicule de ta demande???
Tu me barbes depuis hier à vouloir garder un userform multipage bientôt inutilisable 700 textboxs, au minimum 100 comboboxs, et maintenant toi qui veux tout garder dans un même userform , tu veux que l'on puisse séparer !!!! ?????
Ton fichier va devenir ingérable!!!
En plus je n'avais pas vu la dernière invention....... Faire des calculs dans la macro avec non pas des variables mais des chiffres en dur, là c'est le bout du bout.(si c'est plus 151.5, tu fais comment, tu vas dans la macro modifier, et tu penses que c'est fiable comme solution?)
Tu devrais commencer par structurer , créer une listes du contenu de tes combobox, dans la feuille mes listes
Tu devrais mettre les bases de tes calculs dans cette même feuille
et au chargement de l'userform, aller chercher les infos dont tu as besoin
Hier j'ai tout repris tes macros, pour pouvoir gérer les ajouts et les modifications, et là par contre tu ne me dis même pas si cela fonctionne comme il faut.
Pourtant j'ai tout refait car rien n'était prévue pour pouvoir le faire, la preuve que ce fichier a été créé sans l’ombre d'une réflexion.
Est-ce que tu as plusieurs formateurs par formation???
Est-ce que c'est toujours le cas, systématiquement ????
C'est pourtant simple, tu fais une feuille Base pour tes clients, une feuille formateur, une feuille ?????
et un userform pour les formations en cas d'ajout, qui ouvre un userform avec les clients à ajouter et les formateurs concernés
et en cas de modification ton userform recherche, qui ouvre l'userform formation, et si tu veux consulter la liste des stagiaires tu cliques et tu ouvres l'userform clients et formateurs.
là tu pourras gérer ce que tu veux ou tu veux et sans avoir des codes qui ne ressemblent à rien.
Enfin je sais que tu ne le feras pas alors
a+
Papou:eek:
 
Dernière édition:

piwwwa

XLDnaute Junior
Re : Transfert de donnée d'un Userform à un autre

Bonjour Paritec et le forum,

Encore un grand merci pour ton aide.

Après mes test de hier pour les stagiaires tout marchais à la perfection, que ce soit l’enregistrement ou les modifications, mais malheureusement cela ne marchait pas pour les formateurs. J’ai testé la V8 et le problème est le même à savoir que l’enregistrement et la modification des stagiaires marche parfaitement, par contre je ne peux n’y enregistrer ni modifier les formateurs interne.

Ce n’est pas que je veux, je préférerais pouvoir tout garder dans un seul (parce que passer avec deux va pas être facile à faire accepter) mais je ne vois absolument pas l’ombre d’une idée de comment je pourrais attaquer ce problème, pour ne laisser qu’un usf.

En ce qui concerne les calculs avec des chiffres en dur j’ai écrit, je l’ai est écrit comme sa car ils sont lié au 35H et donc à la loi de 2000, qui je pense ne changera pas tout de suite.

Quand tu parles de créer une liste de contenu de mes combobox, nous sommes bien d’accord qu’il s’agit par exemple de tous les oui, non, néant, etc que je charge à l’ouverture de l’usf ?

Concernent mais formateurs interne c’est très variable certaine formations n’en ont pas d’autre en ont un, d’autres deux, etc…

Ce n’est pas que ton idée me déplaise, bien au contraire, c’est juste que pour aboutir à la forme de mon fichier (pas au contenu), j’ai était obliger de me mettre d’accord avec l’ensemble des futurs utilisateur qui sont de service différent, et ça n’a pas était aisée, chacun ayant c’est propre envi, et ne voulant pas en changer.

Merci pour ton aide.
 

Paritec

XLDnaute Barbatruc
Re : Transfert de donnée d'un Userform à un autre

Bonsoir Piwwaa le forum
J’ai testé la V8 et le problème est le même à savoir que l’enregistrement et la modification des stagiaires marche parfaitement, par contre je ne peux n’y enregistrer ni modifier les formateurs interne.
C'est sur je ne comprends pas ce que tu veux alors je n'ai pas fait c'est simple
Tes formateurs interne sont bien sur la même ligne que tes clients??
tu as 72 colonnes dont je ne sais pas combien pour la formation environ 20, puis 22 pour les stagiaires, 20 à peu près pour les formateurs
Mais on est bien d'accord que sur une même ligne tu reprends l'intégralité des colonnes formation+stagiaires+formateurs+les bricoles
Oui ou non???
Explique moi en détail ce que tu veux avec tes formateurs et je regarderai (mais explique bien STP dans le fichier dans un pavé texte dans la page menu merci pour moi)
a+
Papou:eek:
 
Dernière édition:

Paritec

XLDnaute Barbatruc
Re : Transfert de donnée d'un Userform à un autre

re Piwwwa le forum
lis bien le post 23 et aussi ma demande de ce post STP, Indispensable pour pouvoir t'aider.
Alors tes formateurs, tu vas les chercher dans la feuille Extract ADP , en ce qui concerne le chargement de l'userform10

1) mais maintenant quand tu as une nouvelle formation tu remplis tes stagiaires, ton formateur, et le reste et ensuite??? tu veux quoi lorsque tu enregistres, dans la feuille Base tu veux quoi?? la recopie de ton formateur sur toutes les lignes de tes stagiaires? ou simplement sur une seule des lignes stagiaire??

2) en cas de modification tu charges à ce moment là les données de la Base vers l'userform10, mais doit-on ressortir et afficher que 1 formateur (si bien sur tu n'avais qu'un formateur comme dans l'ajout que l'on vient de faire au dessus??) ou est-ce que l'on ressort autant de lignes formateur que de Stagiaires?? Si tu modifies les valeurs du formateurs, doit-on enregistrer les nouvelles valeurs dans la base ou dans la feuille Extract ADP
la question est importante car si on enregistre en fonction de la base on pourra toujours retrouver les valeurs d'un formateur avec les valeurs que tu as enregistré, admettons il y a un an, mais si on enregistre que dans extract ADP à ce moment là toutes les consultations pour modifications vont prendre les nouvelles valeurs du formateur modifié.

3) maintenant si j'ai les réponses ci-dessus, sur un clique de enregistrement, tu veux quoi et ou?? si les modifications formateur concernent tout, Base et Extract ADP le bouton enregistrement peut rester seul, si les valeurs enregistrées dans la base doivent être prioritaire, là il faut un bouton dans la feuille Formateur de l'userform10 pour enregistrer les changements simplement dans la feuille Extract et à l'ajout d'une formation les valeurs nouvelles seront donc utiles, mais en conservant les anciennes valeurs possible dans la base

4) j'espère que tu touches du doigt ce que je te répète depuis le début que tu as mal pensé ton fichier et ne me parle pas de tes collègues, car avec 10 mauvaises idées cela ne donne pas 1 bonne idée.

5) si tu conserves la base pour faire des historiques, le fichier va vite gonflé et il faut prévoir de pouvoir le gérer et cela tu n'y penses pas, mais charger une liste de 100 lignes ou de 10000 lignes c'est pas pareil.(en terme de temps de traitement)

voilà si tu pouvais répondre à ces demandes cela serait pas mal pour pouvoir t'aider.
a+
papou:eek:
 
Dernière édition:

piwwwa

XLDnaute Junior
Re : Transfert de donnée d'un Userform à un autre

Bonjour Paritec et le forum,

Je poste ci-joint un petit fichier ne comprennent que la feuille base et base prev pour pouvoir mieux t’expliquer, ainsi qu’un lien vers la v8 avec ces deux feuilles incorporées.

1 - En ce qui concerne les formateurs internes ceux-ci ne sont pas indiqués sur la même lignes que les stagiaires, mais pour chaque stagiaires et chaque formateurs j’enregistre une ligne (cf les sept première lignes de la feuille base, 5 stagiaires, 2 formateurs, cela correspond à une formation).
Je souhaite donc que pour chaque formateur et chaque stagiaires une ligne différente soit enregistrée, donc si il y a 8 stagiaires + 2 formateurs il y aura 10 lignes d’enregistrées.

2 – En cas de modification il y a pour moi deux hypothèses comme d’écrit dans le point 3, soit je charge les données de la base soit de la base prév, c’est pour cela que je ne voyais pas d’autre solution que de passer par deux usf quasi identique (deux usf quasi identique que l’usf recherche) pour ce point.
Concernent les formateurs et comme expliquait dans mon point un on remonte toutes les lignes qui ont était enregistré pour cette formation, je ressort donc dans l’usf 10 autant de formateur que j’ai de lignes enregistrer pour eux à cette formation (dans mon exemple : 2 pour la formation libellé 1 et 1 pour la formation libellé 2).
La feuille Exctarct ADP, celle-ci est issue de requête sur notre logiciel de paye et je la mettrai de temps en temps à jour (nouveau salarié, changement de salaire,…), mais aucun enregistrement ne doit être fait dessus.

3 – Pour moi, je souhaiterais qu’il existe deux sortes de modifications :
- La première concerne les modifications des données qui se trouve dans la feuille base. En cas de clique sur enregistrement je veux que toute les lignes qui ont était modifiées soit changées, c’est-à-dire que par exemple si dans mon fichier dans la feuille base je change le nom prénom du stagiaire en ligne 2 alors je souhaiterais que son nom soit changé ; autre exemple si je change le libellé de la première formation (ligne 2 à 8) de libellé 1 à libellé 5 alors pour toutes les lignes cette modifications s’effectue et au lieu d’avoir libelle 1 de la ligne 2 à 8 en colonne F, j’aurais libellé 5 (que ça soit pour mes stagiaires lignes 2 à 6 ou mes formateurs ligne 7 et 8).
- Le deuxième cas pour moi concerne le passage de données de la feuille base prev à la feuille base, et c’est pour ce cas-là dont je parlais de devoir peut être mettre un deuxième usf. Je m’explique, la feuille base prev contient des infos prévisionnelles que j’ai recueilli mais qui sont incomplètes, c’est info vont me servir à construire mes formations et vont donc devoir se retrouver dans l’onglet base une foi qu’elle auront était enregistré. Afin de ne pas avoir à tout ressaisir je pensais me servir de l’usf de modification (en le dupliquant car je ne vois pas comment faire autrement) pour pouvoir charger et modifier c’est info dans un autre usf (type usf 10). Si on prend l’exemple dans mon fichier, les lignes deux et trois de ma feuille base prév sont modifier et compléter (rajout d’info, passage en formation interne, donc présence d’un formateur interne,…) avant de se retrouver enregistrer dans l’onglet base (lignes 9 à 11) et dans ce cas-là je souhaiterais qu’aux moment de l’enregistrement dans l’onglet base, les lignes que j’ai modifiées qui se trouvait dans l’onglet base prev soit supprimer (ici on supprimerai donc la ligne 2 et 3 de la feuille base prev en même temps qu’on enregistrerait les lignes 9 à 11 dans la feuille base).

5 – Je pensais enlever chaque année l’onglet base et en remettre un vierge, ce qui me ferait environ 1000 lignes par an. J’avais également pensait pour éviter que le traitement de la listbox ne soit trop long à ne charger sont contenu qu’après la première sélection dans la combobox 1, mais je commence à me demander si c’est une bonne idée, d’ailleurs je ne me rend pas vraiment compte tu temps de traitement nécessaire pour 1000 lignes.

Lien vers le fichier ou l’onglet base et base prev on était mis dans la V8 : (c) CJoint.com, 2012

Encore un grand merci pour ton aide, j’espère avoir réussi à être un peu plus clair cette fois.

Fichier contenant uniquement l’onglet base et base prev :
 

Pièces jointes

  • Test - base + base prev.xlsx
    16.8 KB · Affichages: 40

Paritec

XLDnaute Barbatruc
Re : Transfert de donnée d'un Userform à un autre

Re Bonjour Piwwwa le forum
bon alors plus clair pour toi oui sans doute, pour moi, une nouvelle idée à la gomme, une feuille de plus prév là c'est encore ????
mais les problèmes un par un
1) tu veux pouvoir enregistré les formateurs et surtout ne pas toucher à la feuille Extract ADP OK
2) tu veux enregistrer pour 8 stagiaires et 2 formateurs 10 lignes moi je veux bien mais c'est pas du tout ce qui est fait actuellement dans ton fichier, pour le moment les formateurs sont sur la même ligne que les stagiaires du moins dans l'exemple que j'ai dans base????
Alors merci de me faire une base avec exactement le résultat souhaité au niveau enregistrement dans la feuille Base
Ta feuille prev je m'en tape complètement, mais alors complètement car il n'y en a pas besoin on y reviendra après avoir avancé sur le reste
Voilà la V10 avec pleins de modifs, tu modifies la feuille base et tu me réexpédies le fichier STP
dans l'attente de te lire
a+
Papou:eek:
 

Pièces jointes

  • Piwwwa V10.zip
    141.6 KB · Affichages: 28
Dernière édition:

piwwwa

XLDnaute Junior
Re : Transfert de donnée d'un Userform à un autre

Re bonjour Paritec et le forum,

Je viens de regarder ton fichier la feuille mes listes et clair pour moi et rend le code plus compréhensible merci, par contre je ne comprends pas le bouton enregistrer les formateurs, mais peut être que mon point deux va t’éclairer sur mes attentes.

Ok pour l’instant laissons ce problème de prév de côté.

2 – Sur la feuille base j’ai effectué une seul modification sur les lignes que tu avais surlignés en jaune. Ces 7 lignes correspondent à une session de formation avec 5 stagiaires écrit en noir et les deux formateurs écrit en rouge, voilà le résultat que j’attends. Mes stagiaires ne sont donc pour moi pas sur la même lignes, pour la formation surlignés, les stagiaires sont sur les lignes 45 à 49, et les formateurs sur les lignes 50 à 51 (les formateurs sont identifiable en partie par le tag O dans la colonne AL). J’espère que là c’est plus clair ?

lien vers le fichier : (c) CJoint.com, 2012

Merci pour ton aide.
 

Paritec

XLDnaute Barbatruc
Re : Transfert de donnée d'un Userform à un autre

Re Piwwwa le forum
oui c'est normal que tu ne comprennes pas, c'est que j'ai fait , n'ayant pas de réponse, l'enregistrement des modifications, dans la feuille Extract ADP
donc c'est pas ce que tu veux
a+
Papou:eek:
 

Discussions similaires

Statistiques des forums

Discussions
312 328
Messages
2 087 318
Membres
103 515
dernier inscrit
Cherbil12345