[RESOLU] Autofilter - valeur field

  • Initiateur de la discussion Initiateur de la discussion valyno
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

V

valyno

Guest
Bonjour,

J'utilise une macro pour filtrer le contenu d'un tableau selon plusieurs critères.
J'ai donc (entre autres) les ligne suivante :

Code:
Dim moncritere As String
moncritere = Range("a1")
Sheets("mesdonnes"").range("a6").Autofilter 1, moncritere

de cette manière, je tri sur la colonne A, selon un critère que je défini dans la celluleA1.
Je souhaite appliquer un deuxième filtre, qui peut être placé soit sur la colonne B, ou C ou D etc... en fonction d'un critère qui change selon la colonne...
Je souhaite indiquer dans une cellule, par exemple A2, le numero de colonne sur lequel le second filtre devra être appliqué

J'ai tenté sans succès la chose suivante :
Code:
Dim moncritere As String
Dim colone As String
Dim moncritere2 As String
moncritere = Range("a1")
colonne = Range("a2")
moncritere2 = Range("a3")
Dim colonne As String
Sheets("mesdonnes"").range("a6").Autofilter 1, moncritere 'premier filtre, appliqué sur la colonne 1
Sheets("mesdonnes"").range("a6").Autofilter colonne, moncritere2 'second filtre à appliquer sur la colonne déterminée dans la cellule A2, selon le critère déterminé dans la cellule A3
Est-ce possible ? Si oui, comment ?
Merci d'avance pour votre aide
 
Dernière modification par un modérateur:
Re : Autofilter - valeur field

Bonjour Gorfael,

Je te remercie pour ton aide !
J'ai modifié ma macro selon tes indications, mais j'ai une erreur :

Erreur d'execution '1004':
Erreur définie par l'application ou par l'objet

Le debogueur me montre que cela bloque sur la ligne
Code:
Sheets("mesdonnes"").range("a6").Autofilter  Field:=Range("a2"), Criteria1:=Range("a3")

Par contre cela fonctionne si les paramètres sont entrés en dur dans le code :
Code:
Sheets("mesdonnes"").range("a6").Autofilter 12, "Non"
plutot que d'utiliser les variables..

Une idée ?

Merci encore !!
 
Re : Autofilter - valeur field

Salut valyno et le forum
Les valeurs A2 et A3 qui bloquent ?
A+

Oui, le fait d'utiliser Filed et Criterial suivi du Range vont planter la macro.
Je suis finalement parvenu à la faire fonctionner avec la syntaxe suivante :

Code:
Dim moncritere As String
Dim moncritere As String
Dim colone As String
Dim moncritere2 As String
moncritere = Range("a1")
colonne = Range("a2")
moncritere2 = Range("a3")
Sheets("mesdonnes"").range("a6").Autofilter 1, moncritere 
Sheets("mesdonnes"").range("a6").Autofilter colonne, moncritere2

Merci encore pour ton aide Gorfael !!
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
2
Affichages
411
Réponses
5
Affichages
915
Réponses
12
Affichages
1 K
Réponses
12
Affichages
731
Retour