IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Filtrer une base de données en feuille2 à partir d'une page 1 en indiquant un mini et un maxi


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Novembre 2010
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 68
    Points : 44
    Points
    44
    Par défaut Filtrer une base de données en feuille2 à partir d'une page 1 en indiquant un mini et un maxi
    salut à tous, voilà, j'ai 1 feuille 1 nommée "identification" dans laquelle j'aimerais indiquer le mini (dans H10 de cette feuille) et le maxi (dans I10) de l'ensemble des valeurs de la colonne 6 de ma feuille 2 nommée "base de données".
    En bref ?Je souhaite,
    AVANT
    *en feuille 1:
    H10->mini à saisir (par exemple 20)
    I10->maxi à saisir(par exemple 50)
    *enfeuille 2:
    colonne5 colonne 6 colonne 7...
    45 23 10
    65 18 18
    56 42 49
    45 60 78

    APRES
    *en feuille 1:
    H10->20
    I10->50
    *enfeuille 2:
    colonne5 colonne 6 colonne 7...
    45 23 10
    56 42 49


    VOILA
    MERCI

  2. #2
    pgz
    pgz est déconnecté
    Expert éminent Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Points : 6 591
    Points
    6 591
    Par défaut
    Bonjour.

    Si dans la feuille 2 il y a une ligne de titre avant les données, tu peux utiliser un filtre avancé. Il faudra adapter la feuille 1 pour que H9:I10 devienne une zone de critères.

    Cordialement,

    PGZ

  3. #3
    Membre du Club
    Homme Profil pro
    Inscrit en
    Novembre 2010
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 68
    Points : 44
    Points
    44
    Par défaut
    Je peux pâs faire comme cela j'y ai pensé...j'ai en tout une vingtaine de colonnes qui vont être filtrées dans ma base de données avec des mini et maxi

  4. #4
    Membre du Club
    Homme Profil pro
    Inscrit en
    Novembre 2010
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 68
    Points : 44
    Points
    44
    Par défaut filtrage à distance
    bonsoir,voilà, j'ai sur ma feuille 2 une base de données avec un filtre auto.J'aimerais, pour chacune de mes colonnes, pouvoir les filtrer de ma feuille 1 en indiquant un mini et un maxi de séléction.

    ex: dans ma colonne "prix" de ma feuille 2, je veux seulement les prix compris entre 1000 et 1200€(alors que sans filtre la colonne va de 800 à 2000€).
    je veux que ces valeurs mini et maxi, à saisir en feuille 1, soient dans 2 cellules côte à côte.



    merci
    aurélien

  5. #5
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    Bonjour,

    Ceci pourrait peut-être convenir
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    Sub test()
    Dim Mini As Integer, Maxi As Integer, i As Integer
     
    With Sheets("Feuil1")
        Mini = .Range("H10")
        Maxi = .Range("I10")
    End With
     
    With Sheets("Feuil2")
        Application.ScreenUpdating = False
        .Range("A1:A" & Rows.Count).EntireRow.Hidden = False
        For i = .Cells(Rows.Count, 7).End(xlUp).Row To 2 Step -1
            Select Case .Cells(i, 7)
                Case Mini To Maxi
                Case Else: .Rows(i).Hidden = True
            End Select
        Next
        Application.ScreenUpdating = True
    End With
    End Sub

  6. #6
    Expert éminent sénior Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Points : 31 877
    Points
    31 877
    Par défaut
    Bonjour et bienvenue au forum
    Par filtre automatique, code fait, j'espère que tu chercheras à comprendre chaque instruction (F1 est d'une grand utilité)
    en feuil1:
    B1: le prix min et en B2: le prix max
    en feuil2: la colonne C est la colonne des prix avec en ligne 1 le titre des données
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Sub FiltreEntreBornes()
    Dim LastLig As Long
    Dim MinPrix As Double, MaxPrix As Long
     
    Application.ScreenUpdating = False
    MinPrix = Application.Min(Sheets("Feuil1").Range("B1:B2"))
    MaxPrix = Application.Max(Sheets("Feuil1").Range("B1:B2"))
     
    With Sheets("Feuil2")
        .AutoFilterMode = False
        LastLig = .Cells(Rows.Count, "C").End(xlUp).Row
        .Range("C1:C" & LastLig).AutoFilter field:=1, Criteria1:=">=" & MinPrix, Criteria2:="<=" & MaxPrix, Operator:=xlAnd
    End With
    End Sub

Discussions similaires

  1. Réponses: 5
    Dernier message: 30/04/2013, 00h32
  2. Réponses: 4
    Dernier message: 20/07/2011, 14h03
  3. Réponses: 4
    Dernier message: 15/01/2008, 16h36
  4. Réponses: 16
    Dernier message: 05/07/2007, 10h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo