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

Access Discussion :

Erreur avec chiffre à virgule [AC-2016]


Sujet :

Access

  1. #1
    Candidat au Club
    Inscrit en
    Août 2010
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 3
    Points : 4
    Points
    4
    Par défaut Erreur avec chiffre à virgule
    Bonjour,

    Dans un formulaire, je souhaite paramétrer les valeurs par défaut de plusieurs champ "zone texte" en VBA.
    Cependant j'ai une erreur étrange : si la valeur que j'essaie d'afficher contient une virgule j'obtiens une erreur #Nom ? et si le chiffre est un entier il s'affiche.

    Le code que j’utilise est le suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Me.[CG Tx horaire].DefaultValue = DLookup("[CgMoContrat]", "[02_Tbl_Contrat]", "[IdContrat] =" & Forms![04 Facturation]![LstContrat])
    Pour essayer de débugger la situation, j'ai d'abord fait résoudre la fonction ci-dessus à travers une msgbox et j'ai bien la bonne valeur qui s'affiche.
    Ensuite, j'ai fait plusieurs essais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Me.[CG Tx horaire].DefaultValue = CSng("1,1")
    Me.[CG Tx horaire].DefaultValue = "1,1"
    Me.[CG Tx horaire].DefaultValue = 1.1
    Me.[CG Tx horaire].DefaultValue = CSng(1.1)
    Me.[CG Tx horaire].DefaultValue = CStr(1.1)
    Me.[CG Tx horaire].DefaultValue = CStr("1,1")
    Me.[CG Tx horaire].DefaultValue = 1
    Le seul qui fonctionne est le dernier.
    J'ai aussi enregistrer une valeur par défaut dans le paramètre du champ dans le mode édition du formulaire. Et là cela fonctionne avec un chiffre à virgule.

    Auriez-vous une idée pour résoudre mon problème.
    En vous remerciant d'avance.

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Bonjour.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.[CG Tx horaire].DefaultValue = "1.1"
    Devrait marcher ainsi que :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    dim unNombre as single:unNombre=1.1
    Me.[CG Tx horaire].DefaultValue = unnombre
    et peut être :

    Me.[CG Tx horaire].DefaultValue = 1.1 & ""

    Je suis surpris que :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.[CG Tx horaire].DefaultValue = 1.1
    n'ai pas fonctionné.

    Vérifie si tu n'as pas défini un format d'affichage sur ton champ.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  3. #3
    Candidat au Club
    Inscrit en
    Août 2010
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 3
    Points : 4
    Points
    4
    Par défaut Résolu
    Merci bien pour la réponse

    La première méthode fonctionne très bien

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    'Me.[CG Tx horaire].DefaultValue = "1.1"
    Pour la deuxième j'ai du la modifier un peu pour qu'elle fonctionne en remplaçant la virgule qui s'affichait par un point.
    Cela donne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Dim CGTxH As Single
    CGTxH = DLookup("[CgMoContrat]", "[02_Tbl_Contrat]", "[IdContrat] =" & Forms![04 Facturation]![LstContrat])
    Me.[CG Tx horaire].DefaultValue = Replace(CGTxH, ",", ".")
    Il y a a donc un problème de gestion de format entre le point et la virgule.

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

Discussions similaires

  1. Problème avec chiffre à virgule (décimal)
    Par jelmouss dans le forum SQL
    Réponses: 4
    Dernier message: 19/05/2015, 19h35
  2. erreur avec un point virgule
    Par salseropom dans le forum C++
    Réponses: 9
    Dernier message: 26/09/2007, 21h21
  3. probleme requete sql avec chiffres avec virgule
    Par muffin dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 17/09/2007, 19h00
  4. Rand avec chiffre à virgule
    Par Mikiman dans le forum Langage
    Réponses: 2
    Dernier message: 23/09/2006, 14h56
  5. Lire des chiffres avec les virgules
    Par stiko dans le forum C++
    Réponses: 4
    Dernier message: 19/07/2006, 23h04

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