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
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 :
Ligne MSgBox Filtre
D'avance un très grand merci
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 :
Ligne MSgBox Filtre
D'avance un très grand merci
Pièces jointes
Dernière édition: