Conserver les valeurs d'un UserForm

Choupinou -  
eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je dispose de documents Word qui ont un UserForm contenant des optionButtons. Je souhaite garder ces valeurs lors de la fermeture du document. Existe-t-il un moyen simple de le faire ? Une commande VBA ?

Le seul moyen que j'ai trouvé c'est de :
-Pour tout OptionButton, créer une variable Public dans un module, qui contiendra la valeur de l'optionButton. Par exemple valeur_OptionButton1
-Lors du changement de valeur d'un OptionButton, remettre à jour la valeur de la variable Public (par exemple : valeur_OptionButton1 = False).
-Enfin, créer la procédure qui, à l'ouverture du document, va initialiser les OptionButtons. Par exemple, OptionButton1=valeur_OptionButton1.

Problème : lorsque je change la valeur de valeur_OptionButton1, celle-ci se réinitialise tout le temps à False après fermeture puis réouverture du document. Comment résoudre ce problème ? Je souhait que la valeur de cette variable Public sois concervée.. Elle est bien dans un module standard, je ne comprend franchement pas pourquoi elle ne se conserve pas :/

Merci !

2 réponses

  1. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 832
     
    Bonjour,

    Le fait qu'une variable soit déclarée en "PUBLIC" la rend seulement accessible à tes différents SUB ou FUNCTION (mais cela.. tant que l'application fonctionne uniquement ! )

    Si tu ne sauvegarde pas les variables ....normal qu'il n'en conserve pas les valeurs..... à la fermeture du document....

    Pour les conserver tu pourrais utiliser (plusieurs possibilités )
    - Un fichier ini
    - Un fichier excel
    - Une base de données access
    - Un fichier xml
    -Une clé dans la base de regsitre (si tu es sous windows) (mais attention ça peut être risqué si tu ne t'y connais pas vraiment...)
    et bien d'autres choses encore.....

    0
  2. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    Bonjour,

    les OptionButton ont aussi une propriété tag à ta disposition.
    Tu peux y mettre leur état à la fermeture pour les restaurer à l'ouverture.
    Dans l'absolu tu n'as besoin que de connaitre celui activé que tu peux mettre dans le 1er de chaque groupe.
    eric
    0
    1. Luna
       
      Merci eriiic. J'ai essayé mais la propriété tag s'en va à la fermeture duu doc :S.
      sur OptionButton1_Click je dis OptionButton1.Tag=True.
      A la reouverture du doc ya plus de tag. Est ce normal ?
      0
    2. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
       
      Bonjour,

      tu l'as enregistré pour qu'il conserve les modifications ?
      0
    3. Luna
       
      Oui je l'ai enregistré :/
      0
    4. Luna
       
      Enfin j'ai sauvegardé le document avant de le fermer quoi
      0
    5. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
       
      oui, mais après avoir changé ta sélection tu enregistres à nouveau ?
      Que ce soit dans ton doc ou ailleurs comme proposé par jordane, il faut bien que tes modifs soient enregistrées si tu veux les retrouver à l'ouverture.
      0