Variable en global qui ne se reset pas

Bonjour

Je cherche à générer deux variables qui montre avec deux checkbox

Sub CheckBox1_Click()
    If CheckBox1 Then
        rapport = "Activer"
    Else
        rapport = "Desactiver"
    End If

End Sub

Private Sub CheckBox2_Click()
    If CheckBox2 Then
        extraction = "Activer"
    Else
        extraction = "Desactiver"
    End If

End Sub

Et ensuite utilser les deux variables dans un autre module

je les ai mis en Public mais quand je lance une macro d'essai

Range("A20").value = rapport & extraction

Rien ne se passe comme si rapport et extraction sont vide

Je suis bloqué ...

Si quelqu'un à la solution je suis preneur

Bonjour,

Une variable Public se place en haut d'un module; pas n'importe où.

Peut-on avoir un bout de fichier représentatif de ton souci ?

ric

Salut Florian28600, le fil...

Ric à raison fait très attention à ou, et comment tu déclares tes variables, les conseils de Microsoft

Voila j'ai crée un exemple

Donc quand je selectionne CheckBox1 ou 2 je change Rapport et Extraction

Et le bouton 1 permet de mettre dans la cellule B20 j'écris ce qu'il y a d'écris dans Rapport et Extraction

11essai.xlsm (23.85 Ko)

suivant ce que je vous avez répondu je viens de faire un essai et j'ai compris mon erreur

J'écrivais les variables non pas dans un module mais dans la feuille ou se trouve les checkbox

Donc probleme résolu merci

Mais si jamais je ferme le document excel et que je le réouvre les variables retombent

Il existe un moyen de ne pas perdre les valeurs?

Bonjour,

un des moyens de les conserver est de les mettre dans des cellules ou des noms, et de les initialiser sur Workbook_Open

eric

C'est ce que je suis en train de faire car je ne voyais pas comment faire sinon

Mais j'aimerais bien ne pas utiliser de cellule pour mémoriser

Bonjour à tous,

N'est pas déjà écrit dans B1 et B2 ?

Où encore dans B20 ?

Il y a moyen d'aller relire cette information à l'ouverture du classeur.

Ton fichier démo est-il représentatif du fichier de travail ?

ric

Et bien tu mets dans un nom :

    ActiveWorkbook.Names.Add Name:="etat_rapport", RefersTo:="=" & rapport
    MsgBox ActiveWorkbook.Names("etat_rapport")

pense à enlever le "=" à l'utilisation

eric

Edit : tant que j'y suis :

rapport = Mid(ActiveWorkbook.Names("etat_rapport"), 2)

J'utilise ActiveWorkbook pour simplifier, prend le bon classeur

Mon vrai fichier excel permet d'extraire des donnée dans un fichier txt

Donc je voudrais soit crée un rapport (en format pdf) ou extraire les données (dans un nouveau fichier excel) ou les deux

Donc les Checkbox doivent me permette de choisir que faire

tout le reste est déja prêt mais il me manquait à mémoriser les variables que je montais lors de la selection des checkbox

Et ?

Je ne t'ai pas répondu ?

eric

sisi avec le workbook_open qui permet de remettre les variable à jours

Merci beaucoup à tout le monde

Ah, j'ai cru qu'il y avait eu une incompréhension d'un coté ou de l'autre

Rechercher des sujets similaires à "variable global qui reset pas"