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 une valeur en % dans une cellule comme variable d'une macro


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Homme Profil pro
    Conseil en assistance à maîtrise d'ouvrage
    Inscrit en
    Septembre 2014
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Conseil en assistance à maîtrise d'ouvrage
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2014
    Messages : 33
    Points : 19
    Points
    19
    Par défaut Utiliser une valeur en % dans une cellule comme variable d'une macro
    Bonjour,

    Je dois filtrer un tableau sur des lignes comprenant des ratio inférieurs à X %.

    Prérequis : Le X varie selon la demande du client et je ne souhaite donc pas la figer dans la macro.

    Cette valeur est inscrite dans la celulle K17 de l'onglet "Cartouche", sous le format "Pourcentage".

    Or, lorsque je récupère cette valeur, je vois qu'Access la stocke sous la forme "0,8" (ma valeur test est 80 %).

    Et lorsque je veux filtrer ma 29ème colonne (celle où apparaissent les ratios), cela ne fonctionne pas. La seule solution étant que j'entre en dur le critère "> 0.8", ce que je ne veux pas faire (cf. Prérequis).

    A toutes fins utiles, ci-joint le morceau de 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
    Sub formatPDF()
     
    [...]
     
    Dernlignepdf = Sheets("Analyse finale").Range("H1048576").End(xlUp).Row
    CritèreRatio = Sheets("Cartouche").Range("K17").Value
     
    '---------------------------------------------------------------------------------------------------------------------------------------------------------
    '----- GENERATION ----------------------------------------------------------------------------------------------------------------------------------------
    '---------------------------------------------------------------------------------------------------------------------------------------------------------
     
    [...]
     
            Sheets("Analyse finale").Range("$A$2:$AC" & Dernlignepdf).AutoFilter Field:=29, Criteria1:="<" & CritèreRatio
    Comment convertir d'un stockage du nombre du type #,# à un stockage sous forme #.# ?

    J'ai tenté d'autres méthodes, du type :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Criteria1:="<0." & Right(CritèreRatio, Len(CritèreRatio)-2)
    Mais ça ne fonctionne pas... D'avance, merci !

  2. #2
    Expert éminent
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    3 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 3 453
    Points : 6 871
    Points
    6 871
    Par défaut
    Bonjour,

    Peut être avec ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Criteria1:=">" & Format(CritèreRatio, "#0,00%")

  3. #3
    Membre à l'essai
    Homme Profil pro
    Conseil en assistance à maîtrise d'ouvrage
    Inscrit en
    Septembre 2014
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Conseil en assistance à maîtrise d'ouvrage
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2014
    Messages : 33
    Points : 19
    Points
    19
    Par défaut
    Oh punaise, ça marche. Tant de temps perdu pour moi pour une si petite formule !

    Merci beaucoup !

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

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