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 :

filtre sur plusieurs horaires


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    855
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 855
    Par défaut filtre sur plusieurs horaires
    Bonjour,

    Voilà mon petit soucis : j'ai un planning avec des personnes et des horaires qui vont de 7h15 jusqu'à 22h servant à voir les disponibilités des uns et des autres. J'applique un filtre automatique pour sélectionner les personnes disponibles à 9h (par exemple).

    Cellule A2 = nom des personnes
    Cellule B2 = premier horaire
    Cellule C2 = deuxième horaire
    Je rentre les disponibilités de chacun exemple 9h00 (en A2,A3,...) 12h00 (en B2,B3,...)

    Donc, lorsque je fais mon filtre sur 9h, naturellement, les personnes "libres" à 9h apparaissent.....par contre les personnes disponibles de 7h15 à 12h n'apparaissent pas....

    Je cherche, je cherche, j'ai essayé avec les formules MIN-MAX, mais ça ne donne rien....

    Une idée ???

    Merci,

    A+

  2. #2
    Membre chevronné Avatar de drakkar_agfa
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    618
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2008
    Messages : 618
    Par défaut
    Bonjour,

    Est-ce possible d'avoir un peu plus de détails?

    Est-ce que tu inscris simplement "9h00" dans la colonne B?
    Comment fais-tu les filtres? (différent de "9h00"?) Utilises-tu un usf pour sélectionner une plage?

    Pour l'instant, il est impossible de trouver ce qui ne fonctionne pas.

    Reviens nous avec plus de détails et nous pourrons (probablement) t'aider

  3. #3
    Membre Expert Avatar de Fvandermeulen
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 869
    Par défaut
    Salut,
    Tu semble utiliser le filtre = à 09h00; as tu essayé en faisant <= à 09h00 ?
    Dans ce cas, le 07h15 s'affichera.
    A+

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    855
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 855
    Par défaut
    Merci drakkar_agfa,
    Merci Fvandermeulen,

    En fait mon souci, c'est je puisse le faire avec une instruction VBA.

    Pour l'instant, j'ai le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Sheets("Feuil1").range("A6").autofilter field:2, criterial1:=range("b2")
    = je mets mes filtres à partir de la ligne 6 et le filtre se fait à partir de la cellule B6, avec la valeur de la cellule B2.

    Le problème Fvandermeulen, c'est que lorsque je veux "prendre" valeur de la cellule B2 et faire le "<09:00"(par exemple (09:00 étant alors la valeur b2)), dont tu me parles, le "criterial1:=" ne fonctionne plus, j'ai beau faire du .value, integer, string, rien ne prend......

    Merci,
    A+

    `

    ce que je veux dire, c'est que je souhaite avoir le <= par rapport à la cellule B2.....

    Merci,
    A+

  5. #5
    Membre Expert
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2009
    Messages
    944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2009
    Messages : 944
    Par défaut
    Bonjour
    Essaye avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Sheets("Feuil1").range("A6").autofilter field:2, criterial1:="<=" & range("b2")

  6. #6
    Membre Expert Avatar de Fvandermeulen
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 869
    Par défaut
    Salut,
    Dans ce cas voici un code si ton début en B2 et fin en C2 pour filtre à partir de A6 pour le début et B6 pour la fin

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Sub Filtre()
    '
    Dim MonDe As Date, MonA As Date 'Dimensionnement des variables
     
    MonDe = Sheets("sheet1").Range("B2") 'Récupérration de la valeur en B2, heure de début
    MonA = Sheets("sheet1").Range("C2") 'Récupération de la valeur en C2, heure de fin
     
        Sheets("sheet1").Range("a6").AutoFilter Field:=1, Criteria1:="<=" & MonDe, Operator:=xlAnd 'applique le filtre de début
        Sheets("sheet1").Range("b6").AutoFilter Field:=2, Criteria1:=">=" & MonA, Operator:=xlAnd 'applique le filtre de fin
    End Sub
    A+

    Edit: Trop étrange, je ne vois le message de fgiambelluco que maintenant que j'ai posté la réponse, mal réveillé ou bug, je sais pas, en tout cas, désolé pour le doublon...

  7. #7
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    855
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 855
    Par défaut
    Merci fgiambelluco,
    Merci Fvandermeulen,

    Effectivement vous m'avez donné la même réponse, ce qui confirme que le code fonctionne....Merci Fvandermeulen car je n'avais pas fait trop attention à la déclaration des variables et effectivement en donnant "as Date", ma variable a la bonne "déclaration"....(ça m'avait bloqué dans les différents codes que j'avais essayé...)

    C'était simple, mais je n'y avait pas pensé au "&"....

    simple et efficace

    Merci à vous 2

    A+ pour de prochaines aventures.....

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [WD7.5] filtre sur plusieurs valeurs
    Par paupiau dans le forum WinDev
    Réponses: 7
    Dernier message: 20/06/2008, 16h12
  2. Filtres sur plusieurs champs/criteres en meme temps
    Par jeo13 dans le forum Macros et VBA Excel
    Réponses: 35
    Dernier message: 26/03/2008, 15h23
  3. filtre sur plusieurs colonnes en vba
    Par caloumaya dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 31/05/2007, 15h05
  4. [VBA Excel] Filtre sur plusieurs critères
    Par tazmania dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 06/12/2006, 12h12
  5. [VBA-E]filtre sur plusieurs Critères avec Excel
    Par Diablo_22 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 29/05/2006, 21h34

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