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 :

Choix avec plusieurs critères


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Femme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Janvier 2024
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2024
    Messages : 1
    Par défaut Choix avec plusieurs critères
    Bonjour à tous !

    Je suis nouvelle sur VBA et ce forum est plein de conseils utiles pour excel et VBA. Je me tourne vers vous parce que j'ai essayé de chercher depuis plusieurs des réponses à mon besoin mais je suis un peu perdue car je n'ai pas encore assez de connaissance sur VBA.
    Voici mon besoin : j'aimerais réaliser une sélection automatique de date la plus petite d'un tableau en fonction de deux critère dans trois colonnes différentes(Activités, Tâche et Date) et mettre cette date dans un autre tableau dans une autre feuille.
    Mon tableau est un tableau de suivi des tâches d'un projet :

    1dashboard-activites-travail-automatisation.xlsm (35.55 Ko)
    Activites | Tache | Sous-tâche | Date Début | Date de fin

    Je veux que la plus petite date correspondant à l'activité et la tâche soit choisi et mise dans un autre tableau pour suivre la progression des activités et tâches.
    J'ai réussi à coder avec des fonctions excel mais je voudrais automatiser la procédure sans avoir à sélectionner toutes les lignes correspondant à l'activité et tâche pour faire la sélection de la date.

    Merci beaucoup pour votre aide et conseil
    Fichiers attachés Fichiers attachés

  2. #2
    Membre chevronné
    Homme Profil pro
    Formateur bureautique
    Inscrit en
    Janvier 2021
    Messages
    302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Formateur bureautique
    Secteur : Enseignement

    Informations forums :
    Inscription : Janvier 2021
    Messages : 302
    Par défaut Proposition
    Bonjour
    en gros la macro serait = pour chaque ligne dont le projet et la tache correspondent aux critères indiqués, si la date début est < à la date précédente, retenir ma ligne en vue de la copier en feuille2

    je propose le code suivant :

    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
    21
    22
    23
    24
    25
    26
    27
    28
    Sub TodyBlue()
     
    Dim mon_activité As String
    Dim ma_tache As String
    Dim ma_plus_petite_date As Variant
    Dim ma_ligne As Variant
     
    mon_activité = InputBox("activité ?", "Tapez l'activité")
    ma_tache = InputBox("tache ?", "Tapez la tâche")
    ma_plus_petite_date = 99999 'j'ai mis une date sur l'année 2173 pour commencer
     
    Dim oList As ListObject
    Dim oRow As ListRow
     
    Set oList = ActiveSheet.ListObjects("TBL_Données")
    For Each oRow In oList.ListRows
        If oRow.Range(1) = mon_activité And oRow.Range(2) = ma_tache Then
            If oRow.Range(4).Value < ma_plus_petite_date Then
                ma_plus_petite_date = oRow.Range(4).Value
                ma_ligne = oRow.Range(4).Row
            End If
        End If
    Next oRow
     
    'je copie ma ligne dans la feuile 2
    Sheets("Feuil2").Rows("4:4").Value = Sheets("Feuil1").Rows(ma_ligne & ":" & ma_ligne).Value
     
    End Sub
    Cela implique juste de passer tes données en tableau structuré et de le nommer TBL_Données

    Points pouvant/devant être améliorés/ajustés :
    mettre tes projets et tes tâches dans des listes de manières à pouvoir les sélectionner dans des menus déroulants (plutot que de les saisir via inputbox)
    la derniere ligne du code reporte les infos en feuille 2 ligne 4 donc à ajuster au besoin
    les oRow.Range(1), oRow.Range(2) et oRow.Range(4) correspondent aux colonnes analysées dans le tableau (ici Activité, Descritpion tâches et Date début prévu ; respectivement en colonnes 1, 2 et 4)

    je mets mon fichier en PJ
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. Réponses: 6
    Dernier message: 23/11/2011, 16h36
  2. [XL-2003] obtenir une donnée avec plusieurs critères de choix
    Par spico45 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 15/04/2009, 13h34
  3. Recherchev avec plusieurs choix possibles
    Par solorac dans le forum Excel
    Réponses: 1
    Dernier message: 30/09/2008, 15h00
  4. like avec plusieurs choix
    Par mon_pseudo dans le forum Langage SQL
    Réponses: 12
    Dernier message: 20/06/2008, 10h42

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