Variable public

Fermé
dudulleray - 21 oct. 2012 à 17:35
 dudulleray - 22 oct. 2012 à 09:08
Bonjour a toutes et tous, Forum



J'ai un UserForm baptiser ( Gestion_du_listing ) écrit tel quel.

je vais utiliser un module de classe peut être deux si ça marche je verrai.

Ma question svp:
Je souhaiterai déclarer une variable Public pour mon UserForm afin d'éviter le répètitif du code "UserForm".

j'ai bien essayer ME mais ça marche pas toujours.

Et surtout ou mettre cette variable ( si possible bien entendu ) afin de pouvoir l'utiliser dans tout mon projet.

Merci a vous et de votre temps et merci d'avoir lu mon post.

Bonne fin d'après midi

Cdlt

4 réponses

f894009 Messages postés 17215 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 26 décembre 2024 1 711
21 oct. 2012 à 19:32
Bonjour,

Les variables Public pour un projet sont a declarer dans un Module.

Bonne suite
0
Salut f894009

merci de ta réponse, c'est sympa

Ok bien compris pour ta réponse

Mais pour ma question svp

Je souhaiterai déclarer une variable Public pour mon UserForm afin d'éviter le répètitif du code "UserForm" et pouvoir l'utiliser cette variable dans tous les modules de mon projet

bonne soirée a toi et merci

Cordialement Ray
0
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 7 248
22 oct. 2012 à 07:22
Bonjour,

Dans un module standard :
Dim UF1 As UserForm
Sub test()
    Set UF1 = UserForm1
    UF1.TextBox1 = "test"
    UserForm1.Show
End Sub 

Mais comme tu vois ça ne marche pas pour les méthodes.
De plus tu vas te priver de l'auto-complétion qui à mon avis est quand même bien pratique.

Tu peux aussi utiliser with.

eric
0
Bonjour Eric,

Merci pour ta réponse c'est sympa

je vais essayer ton code tout a l'heure

mais je ne comprends pas trop
ça ne marche pas pour les méthodes
et l'auto-complétion

Si tu peux m'en dire plus quand tu aura le temps bien sur, merci

bonne semaine et bon courage si tu va bosser

cordialement

Raymond
0
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 7 248
Modifié par eriiic le 22/10/2012 à 08:32
ça ne marche pas pour les méthodes
UF1.Show ne marche pas
Il faut saisir UserForm1.Show

et l'auto-complétion
Si tu saisis Userform1.t et que tu tapes ctrl+espace, vbe va te proposer les objets du userform qui commencent par t comme Textbox1
Si tu saisis UF1.t suivi de ctrl+espace il ne te les proposera pas. Il faudra que tu connaisses par coeur de la 1ère à la dernière lettre tous les noms de tous les objets et les saisir intégralement.

Les propriétés des objets n'apparaitront pas non plus.
Avec UserForm1.TextBox1.l tu peux avoir .left etc
Avec UF1.TextBox1.l tu n'as rien. A toi de te rappeler toutes les propriétés de tous objets.

Problème que tu n'as pas en utilisant with si tu nommes souvent le userform dans la procédure.

Et si tu prends l'habitude de démarrer les noms d'objets par un préfixe de 3 lettres selon leur type, tu tapes le préfixe (par exemple frm... pour les userform, tbx... pour les textbox) suivi de ctrl+espace et tu as tous les noms de tes objets dans le type qui apparaissent dans la liste.
Saisir un espace ou un . colle celui sélectionné dans le code (ou un double-clic).

A fainéant, fainéant et demi, pour moi le choix est tout fait ;-)

eric
0
Salut Eric

Merci pour toutes ces infos, j'ai appris quelque chose ce matin.

Donc pas conseillé de rendre Public mon UserForm (Gestion_du_listing)

Public Gestion_du_listing As UserForm c'est pas bon

With Gestion_du_listing >>> c'est bon ??

Mais dans le cas d'un Module de Classe ou je dois aller souvent dans mon UF
chercher des infos, en copier, ou cliquer sur un objet.

c'est pour ça que je voulais avoir une variable courte déclarer en Public afin d'éviter de taper mille fois Gestion_du_listing

Encore merci pour ces explications

Raymond
0
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 7 248
22 oct. 2012 à 09:00
Ben tu tapes Ges suivi de ctrl+espace, et si Gestion_du_listing est le 1er à apparaitre tu tapes "." pour le coller dans le code.
eric
0
Re,

Ok bien compris

Merci pour ton aide, je vais faire des essais

Je te souhaite une bone journée et encore merci

Cordialement Raymond
0