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 :

Récupérer les informations de toutes les colonnes d'une liste déroulante


Sujet :

VBA Access

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Août 2003
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2003
    Messages : 85
    Points : 45
    Points
    45
    Par défaut Récupérer les informations de toutes les colonnes d'une liste déroulante
    Bonjour,
    j'ai créé une liste déroulante avec 2 colonnes de données, et j'aimerais que les données de chaque ligne aillent pour le 1ere colonne dans un champ A, et les données de la 2eme colonne aillent dans un champ B; Or access ne permet d'envoyer les données que d'une colonne vers un champ. Y a t'il une solution ?
    Exemple:
    Col A -> Champ Observation Col B -> Champ Score
    Tombe en AR -4
    Se penche en AV 0
    S'aide des mains -2

    Cela me servirait à présenter les observations d'un côté, et le score global de l'autre avec un champ calculé.
    Merci;
    NB je connais access assez bien, mais pas le VBA, j'ai besoin d'explications très simples, pour un nèophyte.

  2. #2
    Expert éminent
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Points : 7 759
    Points
    7 759
    Par défaut
    Bonjour,

    un exemple de code vba
    Code vba : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Private Sub MaListe_AfterUpdate()
    If Me.MaListe.ListIndex <> -1 Then
       Me.Observation = Me.MaListe.Column(0)  ' 1ère colonne
       Me.Score = Me.MaListe.Column(1)  ' 2ème colonne
    End If
    End Sub
    Nom des contrôles utilisés (Fenêtre Propriétés->Onglet Autres->Nom) :
    MaListe est le nom de la liste déroulate
    Observation est le nom du contrôle dont le champ lié est Observation
    Score est le nom du contrôle dont le champ lié est Score

    Le code ci-dessus correscpont au code de l'évènement "Après MAJ" de la liste MaListe.
    Dans la fenêtre Propriétés de la liste MaListe aller dans l'onglet Evènements.
    En face de "Après MAJ" choisir "Procédure évènementielle", cliquer sur le bouton avec trois petits points.
    Dans l'éditeur VB copier les lignes comprises entre Private Sub MaListe_AfterUpdate() et End Sub.
    Remplacer les noms des contrôles par ceux de ton formulaire.

    A+

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Août 2003
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2003
    Messages : 85
    Points : 45
    Points
    45
    Par défaut Merci
    Merci, j'ai pu utiliser votre code, et cela marche.

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

Discussions similaires

  1. Update sur toutes les champs de toutes les tables
    Par cmasset dans le forum Requêtes
    Réponses: 2
    Dernier message: 19/12/2013, 19h04
  2. Lister toutes les lignes de toutes les tables
    Par méphistopheles dans le forum Langage SQL
    Réponses: 3
    Dernier message: 09/07/2010, 18h23
  3. [SP-2007] Modifier les choix d'un menu (colonne d'une liste)
    Par manumalo dans le forum SharePoint
    Réponses: 1
    Dernier message: 08/12/2009, 14h07
  4. egaliser toutes les cellules "" de toutes les feuilles
    Par tomy7 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 03/03/2008, 12h23
  5. Réponses: 2
    Dernier message: 10/06/2007, 22h24

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