Commandbox en variable dans Sub

dureiken

XLDnaute Junior
Bonjour, j'ai crée cette fonction afin d'afficher, cacher des colonnes. Elle marche excepté l'entrée de la donnée "Bouton".

Code:
Sub CacherAfficher(Debut As Variant, Fin As Variant, Bouton As Variant)
    
    Columns(letcol(NumColonne(Debut, "En_Cours")) & ":" & letcol(NumColonne(Fin, "En_Cours"))).Select 'Rentrer ici les colonnes du tableau si elles sont différentes
    
    If Selection.EntireColumn.Hidden = False Then 'Test pour savoir si les colonnes sont cachées ou non
    Selection.EntireColumn.Hidden = True 'Si elles sont affichées on les cache
    
    With Sheets("En_Cours")
        .Bouton.BackColor = &HFF& 'Bouton en couleur rouge
        .Bouton.Value = False 'On desactive le bouton
    End With
    
    
    ElseIf Selection.EntireColumn.Hidden = True Then 'Test pour savoir si les colonnes sont cachées ou non
    Selection.EntireColumn.Hidden = False 'Si elles sont cachées on les affiche
    
    With Sheets("En_Cours")
        .Bouton.BackColor = &HFF00& 'Bouton en couleur verte
        .Bouton.Value = True 'On active le bouton
    End With
    End If
    
    Cells(1, 1).Select
End Sub

Par exemple un de mes Checkbox s'appelle Trame, j'appelle donc la commande avec :

Code:
Private Sub Trame_Click()

Call CacherAfficher([Indexation], [SU], Trame)
    
End Sub




Mais il plante car il n'arrive pas a trouver le Checkbox Bouton au lieu de chercher le Checkbox Trame, logique. J'aimerai pouvoir rentrer le Checkbox comme une variable de ma fonction, car j'en ai 6 différents et je voudrai n'écrire la fonction qu'une fois.

Une idée ? Merci
 

job75

XLDnaute Barbatruc
Re : Commandbox en variable dans Sub

Bonsoir dureiken,

Vous avez dit :

Bonjour, j'ai crée cette fonction afin d'afficher, cacher des colonnes. Elle marche excepté l'entrée de la donnée "Bouton".

Si votre macro ne marche pas, c'est qu'il y a autre chose, sans doute ici :

Code:
Columns(letcol(NumColonne(Debut, "En_Cours")) & ":" & letcol(NumColonne(Fin, "En_Cours"))).Select 'Rentrer ici les colonnes du tableau si elles sont différentes

Sans savoir ce que sont letcol NumColonne, et surtout sans fichier, que voulez-vous qu'on fasse, dites-moi ?

A+
 

job75

XLDnaute Barbatruc
Re : Commandbox en variable dans Sub

Re,

Mais bon Dieu c'est bien sûr !

Au lieu de :

Code:
With Sheets("En_Cours")
        .Bouton.BackColor = &HFF& 'Bouton en couleur rouge
        .Bouton.Value = False 'On desactive le bouton
End With

écrivez seulement (pas de point) :

Code:
Bouton.BackColor = &HFF& 'Bouton en couleur rouge
Bouton.Value = False 'On desactive le bouton

Pareil plus bas.

Et pour l'appel de la Sub, voyez peut-être (je n'en sais rien) :

Code:
Call CacherAfficher([Indexation], [SU], [COLOR="Red"]Sheets("En_cours").[/COLOR]Trame)

A+
 

Discussions similaires

Statistiques des forums

Discussions
312 492
Messages
2 088 895
Membres
103 982
dernier inscrit
krakencolas