Variable public

dudulleray -  
 dudulleray -
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

  1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
     
    Bonjour,

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

    Bonne suite
    0
    1. dudulleray
       
      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
  2. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    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
  3. dudulleray
     
    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
    1. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
       
      ç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
  4. dudulleray
     
    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
    1. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
       
      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
    2. dudulleray
       
      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