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

VBA Access Discussion :

"Compris entre" en VBA [AC-2016]


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Analyse système
    Inscrit en
    Février 2017
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Analyse système

    Informations forums :
    Inscription : Février 2017
    Messages : 17
    Par défaut "Compris entre" en VBA
    Bonsoir, Bonjour,


    Sur un formulaire, je cherche "simplement" a exécuter un module sur le champ "Bra_taille " Si la variable "Bdd_largeur" est comprise entre 2 valeur

    J'ai bidouiller ce bout de code qui ne fonctionne pas "bien entendu" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    If (Bdd_largeur > 1,2 And Bdd_largeur < 5) Then Bra_taille = "Trés_fin"
    If (Bdd_largeur > 5 And Bdd_largeur < 10) Then Bra_taille = "Grand"
    Merci pour l’éventuel aide que vous m’apporterai

  2. #2
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 682
    Par défaut
    Salut,

    L'erreur vient de la virgule au lieu du point.

    tu aurais pu utiliser une structure Select Case
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Select Case Bdd_largeur
    Case 1.2 to 5
    Case 6 to 10
    mais tes valeurs se chevaucheraient

    du coup tu passes par une toute petite correction de ton code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    If (Bdd_largeur > 1.2 And Bdd_largeur < 5) Then Bra_taille = "Trés_fin"
    If (Bdd_largeur > 5 And Bdd_largeur < 10) Then Bra_taille = "Grand"
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  3. #3
    Invité
    Invité(e)
    Par défaut
    Comme vos critères sont mutuellement exclusifs, conventionnellement on écrit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    
    If (Bdd_largeur > 1.2 And Bdd_largeur < 5) Then 
        Bra_taille = "Trés_fin"
    ElseIf (Bdd_largeur > 5 And Bdd_largeur < 10) Then 
        Bra_taille = "Grand"
    Endif
    
    Attention la valeur exacte 5 n'est pas gérée ici puisque "très fin" est < à 5 et grand est > 5...

    Si la valeur exacte de 5 correspond à "très fin", il faut écrire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    
    If (Bdd_largeur > 1.2 And Bdd_largeur <= 5) Then 
        Bra_taille = "Trés_fin"
    ElseIf (Bdd_largeur > 5 And Bdd_largeur < 10) Then 
        Bra_taille = "Grand"
    Endif
    
    Si elle correspond à "Grand" :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    
    If (Bdd_largeur > 1.2 And Bdd_largeur < 5) Then 
        Bra_taille = "Trés_fin"
    ElseIf (Bdd_largeur >= 5 And Bdd_largeur < 10) Then 
        Bra_taille = "Grand"
    Endif
    



  4. #4
    Membre averti
    Homme Profil pro
    Analyse système
    Inscrit en
    Février 2017
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Analyse système

    Informations forums :
    Inscription : Février 2017
    Messages : 17
    Par défaut
    Bsoir,

    Merci beaucoup pour vos explications : It's Work !!

    Bye

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 08/06/2007, 14h16
  2. Gérer du script entre quote
    Par Alexino2 dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 13/07/2006, 23h44
  3. sql dynamic : passage de parametre entre quotes
    Par de LANFRANCHI dans le forum SQL
    Réponses: 12
    Dernier message: 26/05/2004, 15h09

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