Problème d'appel d'un module

Résolu/Fermé
GautPookie Messages postés 29 Date d'inscription mardi 20 décembre 2011 Statut Membre Dernière intervention 16 août 2012 - 10 août 2012 à 12:07
GautPookie Messages postés 29 Date d'inscription mardi 20 décembre 2011 Statut Membre Dernière intervention 16 août 2012 - 16 août 2012 à 10:13
Bonjour,

Je suis bloqué sur un problème (surement tout bête) mais je trouve pas de solution tout seul... alors je fais appel au forum! ;-)

Je veux rendre des CheckBox visible (jusque là, pas de soucis) mais j'aimerais rendre mon fichier plus "jolie" et mettre cette Sub dans un module et faire appel à ce module.
Voici mon code :
Private Sub CheckBox1_Click()

'Rend les checkbox visible ou non'
If CheckBox1 = True Then
CheckBox2.Visible = True
CheckBox3.Visible = True
CheckBox4.Visible = True
CheckBox5.Visible = False
CheckBox6.Visible = False
CheckBox7.Visible = False
CheckBox8.Visible = False
CheckBox9.Visible = False
Else
If CheckBox1 = False Then
CheckBox2.Visible = False
CheckBox3.Visible = False
CheckBox4.Visible = False
CheckBox5.Visible = False
CheckBox6.Visible = False
CheckBox7.Visible = False
CheckBox8.Visible = False
CheckBox9.Visible = False

Sheets("Liste_machines").Select
Range("K9").ClearContents
End If
End If
Range("B9").Select
End Sub

Ce code est écrit dans Microsoft Excel Objets, Machines (Liste_machines).
J'aimerais le mettre dans le module CheckBox mais qu'il s'éxécute quand même!

J'espère avoir été clair...
Quelqu'un peut m'aider?

Merci d'avance
Pookie

5 réponses

Le Pingou Messages postés 12048 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 26 avril 2024 1 427
Modifié par Le Pingou le 11/08/2012 à 23:40
Bonjour,
Au passage, est-vous sur que :
Ce code est écrit dans Microsoft Excel Objets, Machines (Liste_machines).
Ce n'est pas plutôt : Microsoft Excel Objets, Feuil1 (Liste_machines)

Que comprendre par : J'aimerais le mettre dans le module CheckBox.... !
En principe il existe 2 modules : Module et Module de classe ... !

Merci de vos précisions.

Proposition de procédure modifiée :
Private Sub CheckBox1_Click()
'Rend les checkbox visible ou non'
If CheckBox1 = True Then
    For c = 2 To 9
        OLEObjects("CheckBox" & c).Visible = True
    Next c
Else
    For c = 2 To 9
        OLEObjects("CheckBox" & c).Visible = False
    Next c
End If
Sheets("Liste_machines").Select
Range("K9").ClearContents
Range("B9").Select
End Sub


Salutations.
Le Pingou
0
GautPookie Messages postés 29 Date d'inscription mardi 20 décembre 2011 Statut Membre Dernière intervention 16 août 2012
13 août 2012 à 11:50
Bonjour Le Pingou,

Je viens de vérifier, c'est bien : Microsoft Excel Objets, Machines (Liste_machines).
Ainsi, j'aimerais créer un module nommé Checkbox où se trouverait le code (plus jolie d'ailleurs que le mien) des Checkbox_click.

Pour inof : quelle est la différence entre les deux modules dont tu as parlé?
Merci de ton aide
Pookie
0
Le Pingou Messages postés 12048 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 26 avril 2024 1 427
13 août 2012 à 13:26
Bonjour,
La macro [Private Sub CheckBox1_Click()] a été déclarée dans le module de la feuille [Liste_machines] alors pourquoi voulez-vous la mettre dans un module général ?
Concerne : Je viens de vérifier, c'est bien : Microsoft Excel Objets, Machines (Liste_machines).
Voir extrait document joint : https://www.cjoint.com/?3HnnyBFi823

0
GautPookie Messages postés 29 Date d'inscription mardi 20 décembre 2011 Statut Membre Dernière intervention 16 août 2012
13 août 2012 à 14:06
Re,
Je souhaite la mettre dans le module à part car j'ai 350 CheckBox de la sorte sur cette page.
C'est pour faire "plus joli"!
pookie
0
Le Pingou Messages postés 12048 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 26 avril 2024 1 427
13 août 2012 à 15:10
Bonjour,
Eh bien avec vos 350 cases à cocher sur une page ( ou feuille ) , j'espère qu'il reste un peu de place pour les valeurs.
Pour faire plus joli laisser la macro sur le module qui lui correspond et remplacez la par celle-ci qui est plus aboitie :
Private Sub CheckBox1_Click()
Dim trfa As Boolean
trfa = True
'Rend les checkbox visible ou non'
If CheckBox1 = False Then
trfa = False
End If
For c = 2 To 350
OLEObjects("CheckBox" & c).Visible = trfa
Next c
Sheets("Liste_machines").Select
Range("K9").ClearContents
Range("B9").Select
End Sub
0
GautPookie Messages postés 29 Date d'inscription mardi 20 décembre 2011 Statut Membre Dernière intervention 16 août 2012
14 août 2012 à 09:21
Bonjour le Pingou,

Ce n'est pas si simple, comme tu as pu le voir dans mon exemple du début, ce n'est pas parce que Checkbox 1 est vrai que toutes les checkbox sont vrais.
Ta solution marche pour le faux par contre! ;-)
Mais est-ce possible de mettre toutes les checkbox dans un module "checkbox" et de l'appeler depuis Microsoft Excel Objets, Machines (Liste_machines)?

Merci
Pookie
0
Le Pingou Messages postés 12048 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 26 avril 2024 1 427
14 août 2012 à 13:21
Bonjour,

J'aimerais quand même recevoir une réponse similaire à :
Concerne : Je viens de vérifier, c'est bien : Microsoft Excel Objets, Machines (Liste_machines).
Voir extrait document joint : https://www.cjoint.com/?3HnnyBFi823
0
GautPookie Messages postés 29 Date d'inscription mardi 20 décembre 2011 Statut Membre Dernière intervention 16 août 2012
14 août 2012 à 14:52
Oui, c'est bien ça!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Le Pingou Messages postés 12048 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 26 avril 2024 1 427
14 août 2012 à 15:33
Bonjour,
C'est trop demandé que de recevoir aussi un extrait comme je l'ai fait!
0
GautPookie Messages postés 29 Date d'inscription mardi 20 décembre 2011 Statut Membre Dernière intervention 16 août 2012
16 août 2012 à 10:13
Bonjour Le pingou,
Merci de t'être investi mais finalement je vais passer par des UserForms, c'est plus simple, plus joli et facilement modifiable contrairement aux checkbox!
Merci encore de ton aide et à bientôt peut être!
Bien cordialement,
Pookie
0