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

IHM Discussion :

somme de 1+2+3+4 n'est pas egal a "10", mais a "1234"


Sujet :

IHM

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 107
    Points : 66
    Points
    66
    Par défaut somme de 1+2+3+4 n'est pas egal a "10", mais a "1234"
    re bonjour

    hé oui, j'ai encore un souci sous ce satané access

    alors je m'explique, j'ai plusieur champs texte dans un formulaire : "NbVoies", "Nbvoies2", "Nbvoies3" etc... jusqu'à 11

    chacun de ces champs affiche une valeur en fonction d'une liste déroulante(méthode des colone lié) qui elle-meme va rechercher les infos dans une table...Vous me suivez tjs? lol

    Ensuite j'ai un autre champ "TotalNbVoies", tjs dans mon formulaire, qui affiche la somme de "NbVoies", "NbVoies2", "NbVoies3" etc...tjs jusqu'à 11

    Voici le code qui me premet de faire cette somme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =nz([NbVoies])+nz([NbVoies2])+nz([NbVoies3])+nz([NbVoies4])+nz([NbVoies5])+nz([NbVoies6])+nz([NbVoies7])+nz([NbVoies8])+nz([NbVoies9])+nz([NbVoies10])+nz([NbVoies11])
    met le probleme c'est qu'il ne fonctionne pas correctement !
    au lieu de m'afficher "18" (pour 2+7+1+8), il m'affiche "2718" :s

    ai-je oublier quelque chose???
    merci

  2. #2
    Membre chevronné Avatar de Renardo
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    1 648
    Détails du profil
    Informations personnelles :
    Âge : 60
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 648
    Points : 2 019
    Points
    2 019
    Par défaut
    Tes champs sont bien en format numerique?

  3. #3
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Nz retourne un string, donc l'opérateur + en fait la concaténation

    Utilise la fonction cstr pour les convertir en numérique

  4. #4
    Membre expert
    Avatar de mout1234
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 2 210
    Points : 3 228
    Points
    3 228
    Par défaut
    Citation Envoyé par TOFALU
    Utilise la fonction cstr pour les convertir en numérique
    Cher Tofalu, l'idée est bonne mais ... sans doute un peu fatigué Cstr convertit en string non ? (tu me mets le doute là )

    Code vba : Sélectionner tout - Visualiser dans une fenêtre à part
    =CLng(nz([NbVoies],0))+CLng(nz([NbVoies2],0))+....

  5. #5
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    ben quoi, suis fatigué

  6. #6
    Membre expert
    Avatar de mout1234
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 2 210
    Points : 3 228
    Points
    3 228
    Par défaut
    Citation Envoyé par Tofalu
    ben quoi, suis fatigué

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 107
    Points : 66
    Points
    66
    Par défaut
    ça n'a pas marche , j'ai essayé avec CLng (CLong) et Cstr (CChaîne)

    et pour répondre à renardo, Oui mes champs sont bien en numérique...

    avec CSTR, ça m'affiche "0616000000" pour (6+16)
    avec CLNG, ça m'affiche "Erreur"...

  8. #8
    Membre expert
    Avatar de mout1234
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 2 210
    Points : 3 228
    Points
    3 228
    Par défaut
    Citation Envoyé par kevain_09
    avec CLNG, ça m'affiche "Erreur"...
    Redonnes la formule complète que tu as saisie STP.

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 107
    Points : 66
    Points
    66
    Par défaut
    voila le code du champs "TotalNbVoies":

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =CLong(nz([NbVoies];0))+CLong(nz([NbVoies2];0))+CLong(nz([NbVoies3];0))+CLong(nz([NbVoies4];0))+CLong(nz([NbVoies5];0))+CLong(nz([NbVoies6];0))+CLong(nz([NbVoies7];0))+CLong(nz([NbVoies8];0))+CLong(nz([NbVoies9];0))+CLong(nz([NbVoies10];0))+CLong(nz([NbVoies11];0))
    sachant que tout les champs ne sont pas forcement rempli...



    voila un exemple de code qui permet de remplir le 1er champ:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.NbVoies = Nz(Me.liste.Column(3), 0)
    *Dans la colone3, il y a soit un chiffre, soit rien du tout


    j'espere vous avoir fournit le max d'info

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 107
    Points : 66
    Points
    66
    Par défaut
    bon je ne sais pas se que j'ai fait lol, mais maintenant cela me fait bien la somme !!
    mais il faut imperativement que je selectionne un produit possédant un "NbVoies"

    Si je selectionne un produit (via ma liste deroulante) qui ne possède aucun NbVoies (colone3 = vide), cela renvoi tjs #Erreur dans le champs "TotalNbVoies"

    En résumé :
    - Si tout les produit choisi possede un NbVoies ==> sa marche
    Meme si tout les champs "NbVoies" ne sont pas rempli

    je ne sais pas si vous avez réussi a comprendre, c assez complexe a expliquer...dsl

  11. #11
    Membre expert
    Avatar de mout1234
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 2 210
    Points : 3 228
    Points
    3 228
    Par défaut
    ta formule me semble correcte....

    Tu as un #Erreur ailleurs?


    As-tu essayé en ne mettant qu'un ou 2 éléments?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =CLong(nz([NbVoies];0))+CLong(nz([NbVoies2];0))

    Tes contrôles portent-ils le même nom que les champs respectifs?

  12. #12
    Membre expert
    Avatar de mout1234
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 2 210
    Points : 3 228
    Points
    3 228
    Par défaut
    Citation Envoyé par kevain_09
    Si je selectionne un produit (via ma liste deroulante) qui ne possède aucun NbVoies (colone3 = vide), cela renvoi tjs #Erreur dans le champs "TotalNbVoies"
    Essaies en ne mettant que =CLong(nz([NbVoies];0))

    Citation Envoyé par kevain_09
    - Si tout les produit choisi possede un NbVoies ==> sa marche Meme si tout les champs "NbVoies" ne sont pas rempli
    En quoi le champ NbVoies diffère-t-il des autres?

  13. #13
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 107
    Points : 66
    Points
    66
    Par défaut
    Merci pour tout, mais j'ai "réglé" mon problème en rusant...
    quand un produit ne possede pas de Nbvoies, au lieu de rien mettre , j'ai mis un 0 dans la table
    maintenant sa marche , meme si j'aurais preferé ne rien afficher plutot qu'un 0

    merci bcp pour votre aide , pas si facile a distance

  14. #14
    Invité
    Invité(e)
    Par défaut
    De toute façon 1+2+3+4 = mout1234 , c'est normal qu'il est trouvé

    Starec

  15. #15
    Membre expert
    Avatar de mout1234
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 2 210
    Points : 3 228
    Points
    3 228
    Par défaut
    Citation Envoyé par Starec
    De toute façon 1+2+3+4 = mout1234 , c'est normal qu'il est trouvé

    Starec

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

Discussions similaires

  1. La somme de valeurs numeriques n'est pas celle que j'attends.
    Par jeanphi45 dans le forum Développement de jobs
    Réponses: 4
    Dernier message: 02/04/2010, 17h19
  2. Somme de deux select dont l'un est 'vide'
    Par djidee dans le forum SQL
    Réponses: 2
    Dernier message: 06/11/2009, 15h31
  3. Programmer encore en VB 6 c'est pas bien ? Pourquoi ?
    Par Nektanebos dans le forum Débats sur le développement - Le Best Of
    Réponses: 85
    Dernier message: 10/03/2009, 14h43
  4. Réponses: 13
    Dernier message: 05/11/2007, 09h00
  5. Index n'est pas a jour
    Par touhami dans le forum Paradox
    Réponses: 5
    Dernier message: 11/12/2002, 14h47

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