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 :

Formulaire d'edition de table


Sujet :

IHM

  1. #1
    Membre du Club
    Homme Profil pro
    Audiovisuel
    Inscrit en
    Décembre 2006
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Audiovisuel
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2006
    Messages : 93
    Points : 49
    Points
    49
    Par défaut Formulaire d'edition de table
    Bonjour,

    Je désire créer un formulaire à partir duquel il serait possible de modifier le contenu d'une table "client".
    >>> On fait apparaitre toutes les infos sur un client et on modifie celles que l'on veut.
    Je selectionne le numéro du client avec une liste déroulante et je met a jour tous les champs le concernant dans des listes déroulantes (les zone de liste n'étant pas modifiable).
    Mon problème est qu'après la sélection du numéro de client, les zone de liste déroulante sont mises à jour MAIS il faut obligatoirement cliquer dessus pour que le contenu apparaissent a l'écran.



    Ceci rend également la mise a jour impossible car les champs apparaissent vide pour mon code Visual Basic.

    Comment afficher directement la première ligne du contenu de la liste déroulante ??
    OU Peut-on modifier une zone de liste ??

    Merci !

  2. #2
    Membre expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Points : 3 834
    Points
    3 834
    Par défaut
    Bonjour..

    Une simple question........

    Pourquoi utiliser des zones de liste déroulante pour modifier les données d'un client.......
    Je selectionne le numéro du client avec une liste déroulante
    .Ici oui, cela te permet d'accéder directement au bon client...avec quand même une petite remarque ..
    .....il serait peut-être plus "pratique" d'accéder au client par son nom, plutôt que par un numéro de client.......(...sauf bien sur si ce choix est volontaire en fonction de ton application....)

    ..je met a jour tous les champs le concernant dans des listes déroulantes (les zone de liste n'étant pas modifiable)
    ...ici, je pense qu'il y a un non sens.....
    Si tes zones de listes ne sont pas modifiables...comment veux tu mettre à jour les données du client.....

    Pour faire simple.:
    ...ton formulaire basé sur une table ou une requête.
    ...tu place sur ton formulaire tous tes champs dans un contrôle Zone de texte.
    ...en utilisant l'assistant, tu crée une Zone de liste déroulante.
    Lors de la conception, tu choisi la troisième option proposée "Rechercher un enregistrement dans mon formulaire basé sur la valeur que j'ai sélectionnée dans la liste déroulante".....

  3. #3
    Membre du Club
    Homme Profil pro
    Audiovisuel
    Inscrit en
    Décembre 2006
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Audiovisuel
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2006
    Messages : 93
    Points : 49
    Points
    49
    Par défaut
    Merci pour ta réponse !

    Selectionner son client par son numero ou son nom peu importe la démarche est la meme.

    ...ici, je pense qu'il y a un non sens.....
    Si tes zones de listes ne sont pas modifiables...comment veux tu mettre à jour les données du client.....
    Il n'y a pas de non sens. Les zones de listes ne sont pas modifiables >>> C'est pour cela que j'utilise des zone de liste déroulantes qui elles sont modifiables.
    Le problème est que quand je selectionne un client, mon "Me.refresh" en visual basic fonctionne bien mais il faut obligatoirement que je clique sur le liste pour faire apparaitre les informations (voir l'image).

    Donc ma question est comment faire apparaitre directement la premiere ligne de la liste déroulante.
    Une alternative serait de pouvoir modifier une zone de liste, mais ce n'est apparemment pas possible !!!

    ...tu place sur ton formulaire tous tes champs dans un contrôle Zone de texte.
    Je ne sais pas ou placer mes requete du type "SELECT Client.code_client FROM client;" dans les propriété d'une zone de texte.

    Merci.

  4. #4
    Membre expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Points : 3 834
    Points
    3 834
    Par défaut
    .....un peu confus tout ça...

    Je ne sais pas ou placer mes requete du type "SELECT Client.code_client FROM client;" dans les propriété d'une zone de texte
    ....comme déjà dit...:
    ...ton formulaire basé sur une table ou une requête.
    ....ton SELECT......sera placé dans la propriété "Source" de ton formulaire.

    Ceci dit, je n'ai pas franchement bien compris comment tu procéde pour modifier la fiche d'un client........
    ....si tu modifie...c'est que des données existent déjà pour ce client....

    ....donc, à partir de ton formulaire, place toi sur l'enregistrement concerné et modifie (change) ce que tu souhaite.....
    ...à la fermeture ou au passage sur un autre enregistrement, ces données seront automatiquement enregistrées.....

    J'ai un peu l'impression que tu te complique un peu la vie......

  5. #5
    Membre du Club
    Homme Profil pro
    Audiovisuel
    Inscrit en
    Décembre 2006
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Audiovisuel
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2006
    Messages : 93
    Points : 49
    Points
    49
    Par défaut
    Hé bien c'est un projet a rendre et le but c'est de tous faire en visual basic !!!
    Donc si j'affiche la table directement dans le formulaire c'est trop simple ^^
    C'est pour ça que je met tout dans des zone de liste.

  6. #6
    Membre expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Points : 3 834
    Points
    3 834
    Par défaut
    Bonjour.....
    ...le but c'est de tous faire en visual basic
    .....si tu souhaite tout gérer en VBA......je te suggère fortement de lire ce tuto.:

    Définition et manipulation de données avec DAO.....http://warin.developpez.com/access/dao/

    C'est pour ça que je met tout dans des zone de liste
    .....sinon ici, je ne comprends toujours pas ce que tu souhaite faire.....tu nous parle depuis le début de "Zone de liste"....alors que ton formulaire ne comporte que des "Zone de liste déroulante"...

    Montre nous le code que tu emploie sur tes différents événements.....cela devrait être plus parlant.......

  7. #7
    Membre du Club
    Homme Profil pro
    Audiovisuel
    Inscrit en
    Décembre 2006
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Audiovisuel
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2006
    Messages : 93
    Points : 49
    Points
    49
    Par défaut
    Je vais tout résumé en une question ...

    Comment faire apparaitre directement la premiere ligne d'une zone de liste déroulante sans avoir a cliquer dessus et séléctionné (comme sur la photo)

    ( mon code VB fonctionne très bien ce n'est pas le probleme )

  8. #8
    Membre expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Points : 3 834
    Points
    3 834
    Par défaut
    Comment....

    ....sans hurler.....
    ....en effectuant quelques recherches dans la ..ou dans les anciens posts.....et tu aurais trouvé tout seul....

    Par exemple, dans la propriété "Valeur par défaut" de ta ZdL déroulante, tu tape simplement.:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =[NomZdListe].[ItemData](0)
    Cela dit, je ne comprends toujours pas ton principe de mise à jour..(une zone de texte aurait largement fait mieux...)...

    Pourquoi vouloir faire afficher le premier élément de la ZdL........

    ...si c'est une zone de liste, elle contient a priori plusieurs valeurs...et je ne pense pas que le premier élément correspondra à ton enregistrement en cours........

  9. #9
    Membre du Club
    Homme Profil pro
    Audiovisuel
    Inscrit en
    Décembre 2006
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Audiovisuel
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2006
    Messages : 93
    Points : 49
    Points
    49
    Par défaut
    Parceque dans une zone de texte il n'y a pas de propriété "contenu" et je ne peux donc pas placé ma requete (SELECT Client.prenom FROM Client WHERE Client.code_client=code; )


    Dis moi si je me trompe (et ca m'arrangerai d'avoir faux ...)
    zone de liste > peut afficher le contenu d'une requete mais PAS modifiable
    zone de texte > modifiable mais ne peux PAS afficher le contenu d'une requete
    zone de liste déroulante > peut afficher le contenu d'une requete ET est modifiable

    Je souhaiterais d'abord afficher les anciennes informations du client et les modifier dans les même éléments. Si un gars a changer d'adresse, je le selectionne, je vois son acienne adresse, et dans la meme case j'efface, je réécris et je valide. (Comme qd on visualise la base de donnée MAIS dans un formualire tout propre sans l'aspect "tableau" et avec du VB)


    =[NomZdListe].[ItemData](0) ne fonctionne pas
    (j'ai essayer avec (1) aussi sait-on jamais ...)

  10. #10
    Membre expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Points : 3 834
    Points
    3 834
    Par défaut
    Re...

    Je pense vraiment que tu devrais lire le tuto que je t'ai conseillé dans un de mes précédents post....
    zone de texte > modifiable mais ne peux PAS afficher le contenu d'une requete
    ..Tu peux affecter n'importe quelle requête à ton formulaire (Propriété Source....) et donc alimenter n'importe quel contrôle avec les données qui sont retournées par cette requête....

    =[NomZdListe].[ItemData](0) ne fonctionne pas
    ....Fonctionne très bien....

    Je pense que pour mieux comprendre ton problème, tu devrais nous décrire la façon dont tu procède pour "alimenter" ton formulaire avec les données recherchées....(code VBA.....)...

  11. #11
    Membre du Club
    Homme Profil pro
    Audiovisuel
    Inscrit en
    Décembre 2006
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Audiovisuel
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2006
    Messages : 93
    Points : 49
    Points
    49
    Par défaut
    ..Tu peux affecter n'importe quelle requête à ton formulaire (Propriété Source....) et donc alimenter n'importe quel contrôle avec les données qui sont retournées par cette requête....
    Ca ne marche pas qd je met ma requete SQL ... Comment je fais ?

Discussions similaires

  1. sous-formulaire : champs provenant plusieurs tables
    Par patbeautifulday1 dans le forum IHM
    Réponses: 13
    Dernier message: 21/12/2005, 11h17
  2. sous formulaire vide edit=#error
    Par hocine dans le forum IHM
    Réponses: 7
    Dernier message: 17/12/2005, 17h44
  3. Réponses: 5
    Dernier message: 06/11/2005, 11h26
  4. Réponses: 1
    Dernier message: 24/10/2005, 21h28
  5. Réponses: 9
    Dernier message: 07/10/2004, 19h41

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