Résultat de filtre(condition multiple) par onglet

Bonjour,

Un matériel par ligne avec différents champs

Je cherche à avoir le résultat de différents filtres dans des onglets différents avec toute la ligne.

Je m’explique :

Mon premier onglet nommée BdD contient une extraction de ma base de données de matériel.

Je désire avoir dans l’onglet nommée « courbevoie »

Tous les matériels qui on dans la colonne LIEU courbevoie

Avoir dans l’onglet nommée « Paradis »

Tous les matériels qui on dans la colonne LIEU Paradis

Pareil pour Esvres et pareil pour levallois.

Mais je veux que tous les autre ailles dans l’onglet « Délégation » (Bienfaisance et toulouse)

Jusque la vous me direz pourquoi pas un simple filtre automatique copié collé.

Mais après sa ce complique je veux pouvoir mettre plusieurs conditions

Exemple :

Je veux tous les matériel qui on

LIEU = courbevoie

+

LOGIN = (vide)

Vous le comprendrez c’est pour faire une gestion de parc et ne plus toucher au filtre par la suite.

Comme ça vu que je veux régulièrement vérifier qu’il n’y as pas des erreurs (par erreur j’entends par exemple : que un matériel en production (Etat du portefeuille= Production) ne peux pas être sans nom de contact (LOGIN=(vide))

Je cherche donc une piste par ou commencé et pourquoi pas un peux de code, car j’ai des base mais la je ne sais pas par ou commencé.

rechercheV ? bdligne ? filtre avancé ?

43exemple.xlsx (11.83 Ko)

Bonjour,

Le filtre avancé est particulièrement bien adapté pour ce genre d'exercice.

81exemple.xlsm (31.31 Ko)

A+

Merci, c'est tous a fait ça,

je n'ai plus qu'a modifier les filtres pour afficher se que je veux maintenant.

Petite question

Option Explicit

Sub FiltreLieux()

Sheets("BdD").Range("A1:Z13").AdvancedFilter Action:=xlFilterCopy, _

CriteriaRange:=Range("A2:B3"), CopyToRange:=Range("A5:Z5"), Unique:=False

End Sub

Sub FiltreAutres()

Sheets("BdD").Range("A1:Z13").AdvancedFilter Action:=xlFilterCopy, _

CriteriaRange:=Range("A2:D3"), CopyToRange:=Range("A5:Z5"), Unique:=False

End Sub

je présume que c'est ces valeur la qu'il faut que je modifie pour augmenté mes champ recherche et que je change dans la feuille les champs qu'il doit chercher

Edit : j'ai reussi a faire ma sauce Merci

Une autre petite question,

j'avai ça

Sub FiltreLieux()

Sheets("BdD").Range("A1:Z13").AdvancedFilter Action:=xlFilterCopy, _

CriteriaRange:=Range("A2:B3"), CopyToRange:=Range("A5:Z5"), Unique:=False

End Sub

si je veux prendre ma BdD dans un autre Fichier Xlsx ?

on fait comme ça ?

Sub FiltreLieux()

Sheets("[fichier2.xlsx]feuil1!").Range("A1:Z13").AdvancedFilter Action:=xlFilterCopy, _

CriteriaRange:=Range("A2:B3"), CopyToRange:=Range("A5:Z5"), Unique:=False

End Sub

???

sinon je pensai à ça :

Option Explicit

Sub FiltreLieux()

Workbooks.Open "C:\BdD.xlsx"

Workbook(BdD.xlsx).Sheets("BdD").Range("A1:Z20000").AdvancedFilter Action:=xlFilterCopy, _

CriteriaRange:=ThisWorkbook.Sheets.Range("A2:I3"), CopyToRange:=ThisWorkbook.Sheets.Range("A5:Z5"), Unique:=False

Workbooks(BdD.xlsx).Close

End Sub

mais ça ne marche pas

une idéee ?

Bonjour,

Code à adapter

Sub FiltreLieux()
Dim WsS As Worksheet
Dim WsC As Worksheet
    Application.ScreenUpdating = False
    Set WsC = ThisWorkbook.ActiveSheet
    Workbooks.Open "BdD.xlsx"
    Set WsS = Workbooks("BdD.xlsx").Worksheets("BdD")
    WsS.Range("A1:Z13").AdvancedFilter Action:=xlFilterCopy, _
        CriteriaRange:=WsC.Range("A2:B3"), CopyToRange:=WsC.Range("A5:Z5"), Unique:=False
    Set WsS = Nothing: Set WsC = Nothing
    Workbooks("BdD.xlsx").Close SaveChanges:=False
End Sub

A+

Merci magnifique ça fontionne

Rechercher des sujets similaires à "resultat filtre condition multiple onglet"