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 :

[A-07] Récupération donnée type 'monétaire' d'après un formulaire


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Février 2007
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 33
    Par défaut [A-07] Récupération donnée type 'monétaire' d'après un formulaire
    Bonjour,

    J'ai créé un formulaire sous Acess 07. Il contient différents champs à remplir, ainsi qu'un bouton de validation.

    Au clic sur ce bouton de validation, une requête Sql est exécutée. Elle enregistre dans une table les données issues du formulaire.

    J'utilise VB pour coder l'action au clic de ce bouton de validation. Et le soucis est que je parvient bien à enregistrer dans ma table les données issues du formulaire de types entier et string, mais pas les données de type monétaire.
    En effet, lorsque j'entre un nombre entier cela fonctionne bien, mais lorsque je rentre dans mon formulaire un nombre à virgule, l'erreur suivante apparait :

    " Erreur d'exécution '3346' :
    Le nombre de valeurs de la requête doit coincider avec le nombre de champs destination. "

    Et voici ma requête :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.RunSQL "INSERT INTO CONSOMMABLE (numfsseur_conso, numconstructeur_conso, numcat_conso, libelle_conso, designfsseur_conso, qtemin_conso, ref_conso, prix_conso) VALUES (" & numfsseur & ", " & numconstr & ", " & numcat & ", '" & libelle & "'" & ", '" & designfsseur & "'" & ", " & qtemin & ", '" & ref & "'" & ", " & pu & ");"
    J'ai donc là je pense un soucis de syntaxe pour l'enregistrement de données de type monétaire. Il est également à noter que j'ai déclaré des variables avant la requête, comme cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Dim numfsseur As Integer
    Dim numconstr As Integer
    Dim numcat As Integer
    Dim libelle As String
    Dim designfsseur As String
    Dim qtemin As Integer
    Dim ref As String
    Dim pu As Currency
    Je vous remercie par avance pour vos impressions, en espérant vous avoir là donné tous les éléments nécessaires.

    Vini.

  2. #2
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 148
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 148
    Par défaut
    Bonjour,

    En VBA les virgules sont des points c'est peut-être de là que vient ton problème.

    Avec le peu de code fournit je ne vois pas plus.

    Cordialement,
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  3. #3
    Membre confirmé
    Avatar de antoinev2
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    177
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 177
    Par défaut
    Bonjour vini76,

    dans ton formulaire, as-tu bien défini le format de ta zone de texte correspondant au prix à "Monétaire"?

  4. #4
    Membre averti
    Inscrit en
    Février 2007
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 33
    Par défaut
    Que je rentre un point ou une virgule le message d'erreur s'affiche. Et j'ai bien effectivement défini le format de ma zone de texte en 'monétaire'. Avec un entier je peux ajouter l'enregistrement, avec un nombre à virgule il y'a erreur.

    Y'a t-il une fonction sinon qui pourrait me permettre de récupérer la valeur de mon nombre à virgule, de la formater pour pouvoir ensuite l'enregistrer dans ma table en 'monétaire' ??

  5. #5
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Citation Envoyé par loufab Voir le message
    Avec le peu de code fournit je ne vois pas plus.
    Je suis d'accord avec Loufab, comment affectes-tu ta donnée à ta variable ?

    As-tu essayé la fonction de conversion CCur ?

    Philippe

  6. #6
    Membre averti
    Inscrit en
    Février 2007
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 33
    Par défaut
    C'est vrai que j'ai omis de mettre le code d'affectation de mes variables, le voila :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    numfsseur = [Forms]![f-consommable_ajout]![fsseur]
       numconstr = [Forms]![f-consommable_ajout]![constructeur]
       numcat = [Forms]![f-consommable_ajout]![categorie]
       libelle = [Forms]![f-consommable_ajout]![libelle]
       designfsseur = [Forms]![f-consommable_ajout]![designation]
       qtemin = [Forms]![f-consommable_ajout]![qtemin]
       ref = [Forms]![f-consommable_ajout]![reference]
       pu = [Forms]![f-consommable_ajout]![pu]
    Et je n'ai pas essayé la fonction CCur, je ne connaissais pas..

Discussions similaires

  1. Récupération données formulaire après redirection.
    Par doncho23 dans le forum Langage
    Réponses: 2
    Dernier message: 08/12/2009, 00h52
  2. Réponses: 2
    Dernier message: 14/11/2008, 12h28
  3. Récupération données apres connexion
    Par Juju2008 dans le forum JSF
    Réponses: 1
    Dernier message: 29/07/2008, 18h36
  4. Récupération du type de données.
    Par philnext dans le forum Bases de données
    Réponses: 2
    Dernier message: 17/01/2008, 11h43
  5. Récupération du type d'une colonne dans une base de données
    Par Astartee dans le forum Accès aux données
    Réponses: 2
    Dernier message: 07/05/2007, 14h03

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