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 :

Remplir automatiquement plusieurs champs en fonction d'un critère


Sujet :

IHM

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    103
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Mars 2008
    Messages : 103
    Points : 60
    Points
    60
    Par défaut Remplir automatiquement plusieurs champs en fonction d'un critère
    Bonjour à tous,

    j'ai un petit problème.
    dans ma base, lorsque l'utilisateur veut créer une offre, il a le choix entre:

    - une offre avec un nouveau client, où il devra remplir toutes ses coordonnées
    - une offre d'un client déjà présent dans la base, auquel cas sur le choix du client toutes ses coordonnées seront pré-remplies dans l'offre.

    C'est la 2ème solution qui pose problème. Pour réaliser cette procédure j'ai choisi de déclarer mes variables dans des fonctions sous la forme:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Option Compare Database
     
    Public Client_Activite As String
    Ici il s'agit de l'activité du client.
    Il y a autant de fonctions que de critères communs (adresse, ville, cp, téléphone...)

    Sur mon formulaire où l'utilisateur choisi le client déjà existant j'ai donc sur l'événement clic rentré ce 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
    15
    16
    17
    18
    19
    20
    21
    Private Sub Commande2_Click()
    Me.Requery
    Dim sql As String
    Dim rs As DAO.Recordset
    Static i As Byte
    sql = "SELECT * FROM [Modèle V13] Where nclient = Me.liste ;"
    Set rs = CurrentDb.OpenRecordset(sql)
        Client_Activite = rs("activite").Value
        Client_Adresse = rs("adresse").Value
        Client_CP = rs("cp").Value
        Client_Fax = rs("fax").Value
        Client_Interlocuteur = rs("interlocuteur").Value
        Client_Mail = rs("mail").Value
        Client_Mobile = rs("mobile").Value
        Client_Nom = rs("nclient").Value
        Client_Siret = rs("siret").Value
        Client_Telephone = rs("telephone").Value
        Client_Ville = rs("ville").Value
      DoCmd.OpenForm "créeroffre", acNormal
      DoCmd.Close acForm, "choixclient"
    End Sub
    Ma requête sql où la condition est le nom client (nclient) qui derrière identifie de manière unique le client.

    Cependant, lors du clique sur le bouton voilà l'erreur affichée:

    Erreur d'exécution '3061'
    Trop peu de paramètres. 1 attendu.

    J'en déduis donc qu'aucun paramètre n'est prit en compte, mais je ne vois pas mon erreur.

    merci de votre aide,
    Maxime

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

    Il faut sortir ta liste de ta chaine SQL.

    Essayes

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sql = "SELECT * FROM [Modèle V13] Where nclient =" &  Me.liste & ";"
    Si ton nclient est de type texte essayes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sql = "SELECT * FROM [Modèle V13] Where nclient ='" &  Me.liste & "';"
    Starec

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    103
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Mars 2008
    Messages : 103
    Points : 60
    Points
    60
    Par défaut
    Merci starec,

    s'agissant d'une zone de texte j'ai donc essayé avec ta 2ème solution, et cela fonctionne

    par contre, et c'est embettant, lorsque un champ que je veux copier est vide dans la table, il me met une erreur:

    Erreur d'exécution 94:
    Utilisation incorrecte de Null

    et je ne sais pas résoudre ce problème.
    Merci de votre aide,

    Maxime

  4. #4
    Expert confirmé

    Homme Profil pro
    consultant développeur
    Inscrit en
    Mai 2005
    Messages
    2 881
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : consultant développeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 881
    Points : 4 758
    Points
    4 758
    Par défaut
    lorsque un champ que je veux copier est vide dans la table, il me met une erreur:
    alors il faut utiliser la fonction NZ(). voir l'aide
    "Always look at the bright side of life." Monty Python.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    103
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Mars 2008
    Messages : 103
    Points : 60
    Points
    60
    Par défaut
    merci Micniv,

    effectivement en consultant l'aide c'est cela que je dois utiliser.
    par contre comment l'insérer dans ma syntaxe?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Client_Activite = rs("activite").Value
    Merci,
    Maxime

  6. #6
    Expert confirmé

    Homme Profil pro
    consultant développeur
    Inscrit en
    Mai 2005
    Messages
    2 881
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : consultant développeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 881
    Points : 4 758
    Points
    4 758
    Par défaut
    Simplement comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Client_Activite = NZ(rs("activite").Value)
    "Always look at the bright side of life." Monty Python.

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    103
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Mars 2008
    Messages : 103
    Points : 60
    Points
    60
    Par défaut
    merci,

    c'est parfaitement ce que je souhaitais

    Problème résolu

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

Discussions similaires

  1. Remplir automatiquement des champs
    Par Salsaboy60 dans le forum IHM
    Réponses: 3
    Dernier message: 21/01/2009, 16h03
  2. Réponses: 7
    Dernier message: 13/10/2007, 23h31
  3. Réponses: 5
    Dernier message: 30/12/2006, 15h35
  4. Remplir automatiquement un champ sous condition.
    Par popoliline dans le forum Access
    Réponses: 15
    Dernier message: 15/09/2006, 23h04
  5. Remplir automatiquement un champ dans une table
    Par en_stage dans le forum MS SQL Server
    Réponses: 13
    Dernier message: 03/08/2006, 20h57

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