UserForm héritage ?

  • Initiateur de la discussion Initiateur de la discussion Pepitoww
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

P

Pepitoww

Guest
Bonjour,
Je possède 2 UserForms et j'aurai voulu savoir si on ne pouvait pas faire hériter L'userform 2 d'au moins une variable spécifique au premier Userform ?

Ex: j'ai un formulaire sur l'userform1 (label + textbox)
j'ai un formulaire identique sur l'userform 2 (label + label)

Or pour initialisé l'userform1, j'utilise un certain code et j'aurai voulu récupérer le contenu juste d'une variable du premier UserForm et l'affecter au second pour ne pas ré-écrire tout le code...

Merci
 
Re : UserForm héritage ?

Bonjour,

Cela doit être faisable, il faut mettre ton code commun dans un module standart avec un éventuel passage de paramètres ( si nécessaire ). ce serait plus facile de te faire voir si tu donnais un fichier exemple.
 
Re : UserForm héritage ?

Enfaite je me suis mal exprimé (peut être trop vite aussi...), dans mon cas, le code commun serait parfait.
Pour les variables en Public, n'y-a-t-il pas quelques choses d'autres à déclarer ? J'avais entendu parler de "Option Explicit", sa n'a peut-être rien à voir...
 
Re : UserForm héritage ?

Bonjour Pepito, camarchepas

pour déclarer une variable "public", en premières lignes d'un module standard :

Code:
Option Explicit
Public mavariable As String

pour initialiser ta variable, dans le module de l'usf1 :

Code:
mavariable = Label1.Caption

pour utiliser ta variable, dans le module de l'usf2 :
Code:
label2.Caption = mavariable

A noter "Option Explicit" oblige la déclaration de toutes les variables dans le module où il est placé...

bonne soirée
@+
 
Re : UserForm héritage ?

Déclare toi une fonction qui retourne ta variable dans ton userform1

Function GetVariable() as string
GetVariable= maVariable
End function


Dans ton userform2 tu écris

variable= userform1.GetVariable


Sinon tu peux déclarer un nouvel objet de ta USF que tu peux affecter public.
Tres utile pour afficher 2 fois la même usf. Sans jamais prendre ton original.
New est en fait un construteur de copie

Voir exemple fichier joint
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
3
Affichages
723
Réponses
13
Affichages
2 K
M
Réponses
11
Affichages
2 K
MattMons
M
R
  • Question Question
Réponses
6
Affichages
2 K
D
  • Question Question
Réponses
5
Affichages
859
didier_r
D
A
Réponses
32
Affichages
10 K
A
T
Réponses
5
Affichages
3 K
titoupoulpe
T
H
Réponses
6
Affichages
4 K
Helios67
H
F
Réponses
3
Affichages
13 K
Fabdu57100
F
P
  • Question Question
Réponses
5
Affichages
2 K
PierreJeanPierre
P
Retour