[Résolu indirectement] Exécuter le contenu d'une variable

Gecko62

XLDnaute Nouveau
Bonjour,

Dans un UserForm je dispose de 15 cases à cocher permettant de sélectionner les colonnes à filtrer

dans une macro je construis mon filtre automatique en fonction des cases à cocher sélectionnées
je stocke cela dans une variable

Code:
Private Sub CommandButton2_Click()
Dim Filtre As String
Dim NbCrit As Integer

' Initialisation
' Suppression de tous les filtres
With Worksheets("ListeAdresses")
    If .FilterMode = True Then .ShowAllData
End With

Worksheets("ListeAdresses").AutoFilterMode = False


' mise à zéro des variables
Filtre = ""
NbCrit = 0

' Contrôle des différentes case à cocher et création du critère

' Creche-Garderie
If CheckBox18.Value = True Then
    If Filtre = "" Then
        NbCrit = 1
        Filtre = "ActiveSheet.Range(""$A$1:$BI$6002"").AutoFilter Field:=20, Criteria1:=""Oui"""
    Else
        NbCrit = NbCrit + 1
        Filtre = Filtre & Chr(10) & "ActiveSheet.Range(""$A$1:$BI$6002"").AutoFilter Field:=20, Criteria1:=""Oui"""
    End If
End If

' Ecole primaire
If CheckBox4.Value = True Then
    If Filtre = "" Then
        NbCrit = 1
        Filtre = "ActiveSheet.Range(""$A$1:$BI$6002"").AutoFilter Field:=21, Criteria1:=""Oui"""
    Else
        NbCrit = NbCrit + 1
        Filtre = Filtre & Chr(10) & "ActiveSheet.Range(""$A$1:$BI$6002"").AutoFilter Field:=21, Criteria1:=""Oui"""
    End If
End If
MsgBox Filtre
Worksheets("ListeAdresses").Select
Filtre
End Sub


Or à la fin dernière ligne "Filtre" j'aimerais pouvoir "exécuter" le contenu de ma variable et cela ne fonctionne pas !! J'ai essayé avec Run () sans succès, c'est surement assez simple mais je butte ...

Comment puis-je résoudre ce problème ?

Le contenu de la variable est correct puisqu'elle contient cela si les deux cases à cocher sont sélectionnées :
Msgbox.JPG
Ligne MSgBox Filtre



D'avance un très grand merci
 

Pièces jointes

  • Msgbox.JPG
    Msgbox.JPG
    20.3 KB · Affichages: 28
  • Msgbox.JPG
    Msgbox.JPG
    20.3 KB · Affichages: 31
Dernière édition:

Paf

XLDnaute Barbatruc
Re : Exécuter le contenu d'une variable

Bonjour à tous

pourquoi vouloir mettre dans une variable et tenter d' "exécuter" cette variable?

activer le filtre au fur et à mesure des tests de Checkbox pose-t-il un problème?

Si non:
Code:
' Creche-Garderie
If CheckBox18.Value = True Then ActiveSheet.Range(""$A$1:$BI$6002"").AutoFilter Field:=20, Criteria1:=""Oui""

' Ecole primaire
If CheckBox4.Value = True Then ActiveSheet.Range(""$A$1:$BI$6002"").AutoFilter Field:=21, Criteria1:=""Oui""

A+
 

Gecko62

XLDnaute Nouveau
Re : Exécuter le contenu d'une variable

Bonjour,

Evidemment en direct cela est bien plus simple, mais je croyais qu'Excel était limité à 7 filtres et je voulais inclure un compteur de case à cocher pour ne pas obtenir de message d'erreur.

Mais je vais retenir cette solution

Merci de votre aide
 

Discussions similaires

Statistiques des forums

Discussions
312 338
Messages
2 087 397
Membres
103 535
dernier inscrit
moimeme1