XL 2013 Filtre s'applique dans mauvaise cellule (macro)

ClairePec

XLDnaute Nouveau
Bonjour à tous,

Pour poser le contexte : je travaille dans une menuiserie et j'ai créé un fichier planning dans lequel je dois affecter des missions pour différents chantiers en fonction de 3 rôles : Pose, Atelier, Livraison.

Ce qui donne pour exemple :
- Cellule B9 : Nom du chantier
- Cellule B10 : Mission + Cellule C10 : Rôle
- Cellule B11 : Mission + Cellule C11 : Rôle
- Cellule B12 : Nom du chantier
- Cellule B13 : Mission + Cellule C13 : Rôle
- Cellule B14 : Mission + Cellule C14 : Rôle

Afin de me permettre de filtrer rapidement un rôle (ex : Pose) pour visualiser ses missions sur l'ensemble des chantiers tout en conservant la visibilité du chantier concerné, j'ai créé une macro avec un bouton "Filtre" et "Défiltre".
Ma macro a très bien fonctionné jusqu'à hier mais voilà que maintenant le filtre qui est censé s'appliquer en cellule C9 s'applique en cellule C2. Je ne sais pas quelle modification m'a amené à ce résultat.

J'aimerai pouvoir glisser mon fichier pour que mes explications soient plus claires, mais il est trop volumineux... si quelqu'un a une solution, je suis preneuse.

Merci d'avance de votre aide !
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Re,
Je ne sais pas pourquoi son comportement s'est modifié.
J'ai repris la macro :
VB:
Dim nFiltre As String
nFiltre = [F4]
Range("A9:BD100").Select
Selection.AutoFilter Field:=3, Criteria1:=nFiltre
End Sub
Ca marche bien.

NB: Je n'ai pas compris votre syntaxe :
Code:
Selection.AutoFilter Field:=3, Criteria1:=nFiltre, Operator:=xlOr, Criteria2:="="
Critère2 n'est pas spécifié. Que vouliez vous mettre en second filtre ?
 

ClairePec

XLDnaute Nouveau
Malheureusement maintenant le filtre m'efface les lignes grisées, que je dois impérativement garder visible.
Comment faire pour les conserver ?

J'avoue ne rien y connaitre en macro. Je suis tombée sur une conversation sur ce forum et y ai repris la formule de la macro en essayant de l'adapter à mon cas... ca a marché, un temps.
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
C'est à cela que servait votre second critère apparament;
Avec cette macro vous conservez les lignes grisées.
J'ai juste changé le tableau où ce filtre intervient.
VB:
Sub Filtre()
Dim nFiltre As String
nFiltre = Worksheets("Project Plan").Range("F4").Value
Range("A9:BD100").Select
Selection.AutoFilter Field:=3, Criteria1:=nFiltre, _
Operator:=xlOr, Criteria2:="="
End Sub
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas