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 :

Macro loops et recherche de valeur


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Ingénieur après-vente
    Inscrit en
    Janvier 2019
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur après-vente

    Informations forums :
    Inscription : Janvier 2019
    Messages : 10
    Par défaut Macro loops et recherche de valeur
    Bonjour,

    Je suis novice en macro et VBA et j'essaie d'automatiser le check de valeur dans certains cases avec plusieurs conditions.
    Je suis arrivé à un code mais je ne suis pas assez doué pour le rendre "automatique" sans que je doive écrire toutes les conditions une à une, je vais appel à votre aide et votre savoir

    Le but est de comparer le texte se trouvant dans 1, 2 ou 3 cases (le texte peut être différent à chaque fois) à une table qui répertorie les valeurs possibles pour ces champs et de comparer si la valeur obtenue est dans la gamme ou non.
    Ce n'est pas facile à expliquer comme ça, voici mon code:

    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
    Sub checkvalidité()
     
    With Range("T5:U8")
    .ClearFormats
    End With
     
    Dim i As Integer
    For i = 5 To 7
        If Cells(i, 20) = Range("C50") And Range("G3") <= Range("G50") Then
        Range(Cells(i, 20), Cells(i, 21)).Interior.Color = RGB(100, 200, 0)
        Cells(i, 21) = "V"
        End If
        If Cells(i, 20) = Range("C50") And Range("G3") > Range("G50") Then
        Range(Cells(i, 20), Cells(i, 21)).Interior.Color = RGB(255, 0, 0)
        Cells(i, 21) = "X"
        End If
     
        If Cells(i, 20) = Range("C54") And Range("G3") <= Range("G54") Then
        Range(Cells(i, 20), Cells(i, 21)).Interior.Color = RGB(100, 200, 0)
        Cells(i, 21) = "V"
        End If
        If Cells(i, 20) = Range("C54") And Range("G3") > Range("G54") Then
        Range(Cells(i, 20), Cells(i, 21)).Interior.Color = RGB(255, 0, 0)
        Cells(i, 21) = "X"
        End If  
    Next
    End Sub
    Les textes se trouvant dans les cellules T5 à T7 sont repris dans un tableau démarrant de C50 à C70, j'aimerai que la macro identifie le texte en T5 avec le correspondant dans le tableau de C50 à C70 et comparer la valeur se trouvant de G50 à G70 avec celles du tableau du dessus (analyse de labo) pour voir si la norme est respectée.
    Veuillez m'excuser, j'ai du mal à décrire clairement ce que je tente de faire mais je pense que le code ci-dessous permet de comprendre ce que je tente de faire mais en plus automatique. Si quelqu'un parvient à me comprendre et m'aider ça serait top.
    Je vous joins également mon fichier si cela peut vous aider à comprendre.

    Merci d'avance!

    Checkmacro.xlsm

  2. #2
    Expert confirmé
    Homme Profil pro
    retraité
    Inscrit en
    Juin 2012
    Messages
    3 400
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : retraité
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Juin 2012
    Messages : 3 400
    Par défaut
    Bonjour,

    Un début de solution:
    - placer dans T5 à T7 des listes déroulantes listant les paramètres inscrits de C50 à C71 (ruban / données / validation des données)
    - placer en U5 à U7 la formule effectuant la correspondance entre la plage C50:C71 et la plage G50:G71

    Cela n'indique pas si c'est un max ou un min. Serait possible si cela était indiqué pour chaque valeur.

    Pas de macro nécessaire pour cela.

    A noter qu'il faut autant que possible éviter d'utiliser des cellules fusionnées dans des tableaux.

    Cordialement.
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. [XL-2003] Macro pour rechercher une valeur en fonction de la valeur d'une cellule
    Par Rook93 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 08/01/2013, 11h42
  2. [XL-2002] problème macro excel pour rechercher valeur dans un intervalle
    Par lanomade04 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 18/05/2011, 16h59
  3. Réponses: 4
    Dernier message: 18/12/2009, 13h44
  4. Macro "Recherche une Valeur" dans un Userform
    Par Bastien06 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 15/09/2009, 14h43
  5. Problème lors d'une recherche de valeur macro
    Par yayasiano dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 10/03/2009, 09h24

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