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 :

Utiliser le contenu d'une cellule dans un if


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 13
    Points : 10
    Points
    10
    Par défaut Utiliser le contenu d'une cellule dans un if
    Bonjour à tous,
    Voila une petite question, je voudrais récuperer la valeur d'une cellule pour l'incorporer dans un if. Exemple : je met " < 0" dans une cellule et je veux que mon if utilise ce fameux < 0.
    J'avoue que je ne sais absolument pas comment faire.

    je ne sais pas si je suis clair mais sinon je préciserai .

    bab

  2. #2
    Expert éminent Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 754
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 754
    Points : 9 396
    Points
    9 396
    Par défaut
    si je comprend bien, tu veux utiliser la valeur d'une cellule comme symbole comparateur dans un if.
    Je ne pense pas qu'il y ait une instruction qui permette de convertir du texte en symbole comparateur.
    A moins que quelqu'un ait une ruse de siou

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 13
    Points : 10
    Points
    10
    Par défaut exactement :)
    Vi voila c'est exactement ce que je veux faire.

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 563
    Détails du profil
    Informations personnelles :
    Âge : 61
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 563
    Points : 1 691
    Points
    1 691
    Par défaut
    en fait si cette cellule dois te servir de critere, tu met < 0 dans la cellule, mais tu ne te sert absolument pas de ce qui est inscrit dans la celllule. soit tu trouve une ruse
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if cells(1,1) = "<0" or "<   0" then
    clédetri = "< 0"
    Selection.AutoFilter Field:=2, Criteria1:=clédetri
    else .....
    sinon, tu vas droit au mur
    tu as plutot interet a prévoir une valeur dans cette cellule, et en fonction de cette valeur, tu fais ta boucle if ou un select case

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 13
    Points : 10
    Points
    10
    Par défaut domage
    bon ba si c'est pas possible c'est pas grave. Enfin ca ne me suprend pas vraiment car il faudrait recompiler a chaque fois sinon.

    bab

  6. #6
    Expert éminent Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 754
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 754
    Points : 9 396
    Points
    9 396
    Par défaut
    Peut être un contournement, tu mets les choix de comparateur dans une liste dans une cellule afin de driver l'utilisateur, la valeur a comparer est sur la cellule a droite de celle qui contient les comparateurs

    Ensuite tu fais le travail en 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
     
     
    for i = 1 to 10
     
    select case range("A" & i).value
     
         case ">"
             ...
         case "<"
             ...
     
    end select
     
    next i

  7. #7
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Points : 4 297
    Points
    4 297
    Par défaut
    en utilisant cette fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Function evalue(grandeur As Variant, condition As String) As Boolean
    evalue = Evaluate(grandeur & condition)
    End Function
    et en utilisant une formule du genre
    =SI(evalue(B7;B6);"vrai";"faux")

  8. #8
    Expert confirmé
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Points : 4 085
    Points
    4 085
    Par défaut
    Tu peux créer ta formule (ton if) dans une valeur de chaîne (String) et l'évaluer avec la fonction Eval. Pour pouvoir utiliser Eval, tu dois ajouter une référence dans ton projet VBA (Outils, Références) à Microsoft Scripting Runtime.

Discussions similaires

  1. Réponses: 2
    Dernier message: 13/04/2009, 19h25
  2. contenu d'une cellule dans une formule
    Par aweb dans le forum Excel
    Réponses: 4
    Dernier message: 17/09/2008, 12h12
  3. Utiliser le contenu d'une cellule comme opérateur
    Par chico7878 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 18/06/2008, 18h11
  4. recuperer le contenu d'une cellule dans un DGView
    Par thierry007 dans le forum Windows Forms
    Réponses: 2
    Dernier message: 05/04/2007, 12h46
  5. Copier le contenu d'une cellule dans une variable sous excel
    Par franckB dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 01/04/2007, 19h54

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