filtre selon valeur d'une cellule d'un autre tableau

vgrenet

XLDnaute Nouveau
Bonjour à tous,
Je suis débutant
J'ai un fichier de calendrier avec en colonne A,B,C,D, respectivement les dates, les codes des calendriers, les libéllés court des calendriers et les jours de la semaine (j'ai récupéré les jours lundi, mardi... au format texte de la première colonne).
Lorsque je filtre d'abord sur une valeur de la colonne C pui ensuite une valeur de la colonne D il n'y a pas de problème. Voci le code (que j'ai repris

Sub AfficheCritereCalendrier()
ActiveSheet.UsedRange.Cells(1, 3).EntireColumn.Select 'séléction de la colonne où se trouve le critère
'Selection.AutoFilter ' met en place les filtres automatique
ActiveSheet.ListObjects("Tableau_Lancer_la_requête_à_partir_de_PEGASE9").Range. _
AutoFilter Field:=3, Criteria1:="AN2"

ActiveSheet.UsedRange.Cells(1, 4).EntireColumn.Select 'séléction de la colonne où se trouve le critère
'Selection.AutoFilter ' met en place les filtres automatique
ActiveSheet.ListObjects("Tableau_Lancer_la_requête_à_partir_de_PEGASE9").Range. _
AutoFilter Field:=4, Criteria1:="lundi"
End Sub


Mais lorsque je veux filtrer sur une valeur de cellule qui est dans un autre tableau (par exemple :critéria1:=Cell.Value ("G4")) et que cette valeur est contenue dans le premier tableau,il me met une message d'erreur "objet requis".

Quelqu'un a-t'il une idée ?

cordialement
 

vgrenet

XLDnaute Nouveau
Re : filtre selon valeur d'une cellule d'un autre tableau

Oui en effet ça marche comme ça, c'était tout bête, quand on débute on passe vraiment desfois pour des nazes!!!

cependant pour mon deuxièmme critère Criteria1:="lundi", ma valeur de cellule ("G5") comprend plusieurs jours (lundi mardi mercredi samedi) et j'aimerais que la macro filtre tous les jours compris dans la cellule (lundi and mardi and...). Bien entendu ma cellule ("G5") change un coup il manque le dimanche, un autre coup le mercredi etc.
le range(""). value ne fonctionne pas, peut-être la fonction Instr servirait ???

Merci
 

vgrenet

XLDnaute Nouveau
Re : filtre selon valeur d'une cellule d'un autre tableau

Pour faire plus simple je joins le fichier XLSM.

Sur le feuille 6 tu as les deux tableaux
le but est pour tel ou tel service (G2:L2) savoir tous les jours de l'année ou ils fonctionnent en fonction du calendrier (G3:L3) et des jours de fonctionnement (G4:L4).

Pour cela je m'aide du tableau commençant en A1 qui répertorie tous les jours de l'année en fonction du calendrier.

D'ou mon désir de filtre selon le critère combiné de deux cellules, et mettre le résultat sous le numéro de service.

J'espère que cela t'aide....

Mon fichier de départ faisait plus de 50 ko j'ai donc à la va vite recréé un exemple

Merci
 

Pièces jointes

  • Exemple.xlsx
    9.7 KB · Affichages: 242
  • Exemple.xlsx
    9.7 KB · Affichages: 244
  • Exemple.xlsx
    9.7 KB · Affichages: 234

vgrenet

XLDnaute Nouveau
Re : filtre selon valeur d'une cellule d'un autre tableau

Bonjour à tous,
Je ne trouve toujours pas la solution... quelqu'un a une idée ?
Je reprends mon problème : comment filtrer un calendrier avec tous les jours contenus dans une cellule ?
Mon calendrier est par exemple en A1:D15000 et ma cellule en G5
ma formule ci-dessous fonctionne si G5 ne comporte qu'un seul jours (mardi ou lundi ou...)
Mais comment avoir tous les lundi, mardi, mercredi si dans G5 il y a lundi, mardi, mercredi...???

ActiveSheet.UsedRange.Cells(1, 4).EntireColumn.Select 'séléction de la colonne où se trouve le critère
'Selection.AutoFilter ' met en place les filtres automatique
ActiveSheet.ListObjects("Tableau_Lancer_la_requête_à_partir_de_PEGASE9").Range. _
AutoFilter Field:=4, Criteria1:=Range("G5").Value


Merci
 

Discussions similaires