[VBA] Organiser ces fonctions
Bonsoir,
J'ai une question qui est peut-être trop évidente, mais j'aimerai savoir si il est possible de faire plusieurs 'fichiers' pour organiser ses fonctions ?
Le fichier de mon UserForm comporte 56 fonctions, de très complètes au plus simplistes et récurrentes.
J'aimerai pouvoir déplacer les fonctions simples et moins importantes dans un autre fichier que le principal afin d'avoir une meilleure visibilité et organisation au niveau de mes fonctions plus importantes.
Je ne sais même pas où se trouve mon fichier dans l'explorateur
En vous remerciant,
Zéro
- Messages
- 358
- Excel
- 2003-2007 FR
- Inscrit
- 02/08/2011
- Emploi
- Consultant Test Performance / Audit
Salut,
Je ne sais pas si je répond a coté car je ne comprend pas trop le sens de ta question.
1 - Fonctions/Userform sont stocké DANS le fichier excel (sauf si tu utilises des macros complémentaires XLA)
Tes fonctions reccurentes peuvent être mis dans un module (tu peux créer plusieurs modules que tu nommes en fonction du sujet par ex.). =>
- Dans Excel fais au clavier ALT+F11
- Dans la partie supérieur gauche => click droit sur VBAProject(<NomFichier>) => INSERTION => MODULE( PAS MODULE DE CLASS !)
- Dans le module on peux faire des fonctions ou des routines qui peuvent être appelées depuis ton userform
2 - Tu as bcps de fonctions VBA personnalisé que tu veux utiliser dans d'autres classeurs excel : tu peux les enregistrer dans un fichier XL.A
Dis moi si je suis a coté
Damien
Bigdams a écrit :Salut,
Je ne sais pas si je répond a coté car je ne comprend pas trop le sens de ta question.
1 - Fonctions/Userform sont stocké DANS le fichier excel (sauf si tu utilises des macros complémentaires XLA)
Tes fonctions reccurentes peuvent être mis dans un module (tu peux créer plusieurs modules que tu nommes en fonction du sujet par ex.). =>
- Dans Excel fais au clavier ALT+F11
- Dans la partie supérieur gauche => click droit sur VBAProject(<NomFichier>) => INSERTION => MODULE( PAS MODULE DE CLASS !)
- Dans le module on peux faire des fonctions ou des routines qui peuvent être appelées depuis ton userform
2 - Tu as bcps de fonctions VBA personnalisé que tu veux utiliser dans d'autres classeurs excel : tu peux les enregistrer dans un fichier XL.A
Dis moi si je suis a coté
Damien
Bonjour,
Merci de ta réponse,
Je pense que tu réponds bien à ma question
J'ai essayé d'enlever le préfixe Private du nom de ma fonction, mais ça me donné un message d'erreur car ça ne reconnaissait plus le nom d'un champs. J'ai alors rajouté UserForm.MaTextBox mais ça ne réagit pas mieux.
Je pense que le Module intéragi avec tout ce qui est présent dans le classeur mais pas les UserForms.
Etant donné que toutes les fonctions d'un UserForm se trouve dans le "fichier" : VBAProject > Feuilles > UserForm peut-être dois-je créer plusieurs formulaire afin d'aérer mon code ?
Car en réalité j'ai un formulaire comportant plusieurs étapes ETAPE 1 > Continuer > ETAPE 2 > Continuer > ETAPE 3 > Continuer
Mais chaque étape est dans le même formulaire, c'est-à-dire que j'efface et repositionne les éléments de mon formulaire à chaque étape.
Autrement ce n'est pas un réel problème en soi, il devient juste difficile de se retrouver facilement dans un fichier qui est relativement important en terme de ligne.
En te remerciant,
Cordialement,
- Messages
- 358
- Excel
- 2003-2007 FR
- Inscrit
- 02/08/2011
- Emploi
- Consultant Test Performance / Audit
Re,
Je pense que si tu mets des fonctions dans un module qui interagissent directement sur ton userform, tu dois utiliser
pour une combo par exemple : userform1.combobox1.value etc (préfixe avec le nom du userform)
Damien