USERFORM | ||
---|---|---|
Inscription: 26/11/2013
Messages:
1
Système d'exploitation: PC Version Excel utilisée: 2003, 2010,2013 |
Posté le : 26-11-2013 14h48
Bonjour, je suis débutant en Vb je pioche de-ci delà des infos pour solutionner mes problèmes puis je ne pratique plus pendant de longues périodes et j'oublie par manque de pratique, en cherchant des exemples d'USERFORM j'ai téléchargé sur ce site un fichier mDF_EnrgUSF.xls dans lequel l'userform répond à mes besoins, je l'ai adapté et tout va bien. Par contre j'ai besoin d'un deuxième USERFORM dans le même fichier (pour éditer des données d'une autre feuille) et j'ai des problèmes de compatibilité entre les deux userform que faut il faire pour les faire fonctionner de concert. Merci d'avance de vos conseils.
Edité par Hornet le 26/11/2013 16:23:27
|
|
|
Re: USERFORM | ||
---|---|---|
Inscription: 18/05/2006
De Saône-et-Loire (71)
Messages:
1539
Système d'exploitation: PC Version Excel utilisée: 97, 2000, 2002, 2003, 2007, 2010, 2013, 2016 et 365 |
Posté le : 26-11-2013 23h54
Bonsoir Hornet, bienvenue sur XLpages.com
Ton problème provient juste du fait que tu as 2 fois la déclaration de variable (dans 2 modules différents) : Public Modification As Boolean
Une petite révision sur les déclarations de variables me semble bienvenue : voir l'article "VBA et les Variables". Extrait de cet article : "Une variable de niveau module (dans un module Standard), déclarée à l'aide de l'instruction Public, est utilisable et visible dans le projet tout entier. On pourra appeler cette variable depuis n'importe quelle procédure de n'importe quel module du projet en question."
La variable Modification étant visible dans l'ensemble du projet, tu ne peux pas la déclarer à nouveau dans un autre module.
Solution : il suffit simplement de renommer par exemple "ModificationBIS" la variable déclarée dans le module standard Module2. Et d'adapter ensuite tout le code qui y fait référence : code de ton Userform2 notamment et code évènementiel de la feuille "AD".
Attention également : sauf erreur de ma part, dans le module de code de ton Userform2, tu devrais aussi faire référence à ThisWorkbook.Sheets(2) et non ThisWorkbook.Sheets(1) !
Je te laisse adapter tout ça dans ton classeur.
Bien cordialement, Didier_mDF
Le Webmaster La réponse vous satisfait ? Merci de revenir solder le sujet en [résolu], voir ce lien |
|
|