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

VB 6 et antérieur Discussion :

datacombo rowsource et propriété


Sujet :

VB 6 et antérieur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de LeXo
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    1 147
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 147
    Par défaut datacombo rowsource et propriété
    Bonjour

    alors je me suis décidé pour cette fameuse datacombo

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Set rs = base.OpenRecordset("select * from societe;")
    Set FrmMain.DtCmbSociete.RowSource = rs
    FrmMain.DtCmbSociete.ListField = rs.Fields(1).Name
    il me fait une erreur parce que ce n'est pas l'objet attendu pour le rowsource

    je souhaite mettre 2 champs :
    id que je ne veux pas affiché mais utiliser apres ... vous auriez compris
    nom que je veux afficher

    soit j'aimerais comme ça marche
    soit un tutoriel simple

    merci d'avance

  2. #2
    Membre éprouvé
    Avatar de khany
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    2 073
    Détails du profil
    Informations personnelles :
    Âge : 63
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2002
    Messages : 2 073
    Par défaut
    Avant le Rowsource, tu dois instancier le datasource

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
            Set DataLstSectan.DataSource = Adodc1
            Set DataLstSectan.RowSource = Adodc1
            DataLstSectan.ListField = Adodc1.Recordset.Fields(2).Name
    ici, l'exemple est avec un adodc mais, c'est la même chose avec un rs

  3. #3
    Membre éprouvé Avatar de LeXo
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    1 147
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 147
    Par défaut type incompatible
    alors j'ai fait ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Set rs = base.OpenRecordset("select * from societe;")
    Set FrmMain.DtCmbSociete.DataSource = rs
    Set FrmMain.DtCmbSociete.RowSource = rs
    FrmMain.DtCmbSociete.ListField = rs.Fields(1).Name
    mais il me met erreur 13 type incompatible
    je ne comprends pas

  4. #4
    Membre Expert Avatar de callo
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Février 2004
    Messages
    887
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Togo

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Service public

    Informations forums :
    Inscription : Février 2004
    Messages : 887
    Par défaut
    Essai le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Dim rs As New ADODB.Recordset  
     
    rs.Source = "SELECT NomCle, NomChampAfficher FROM Matable"
    Set rs.ActiveConnection = base
    rs.CursorLocation = adUseClient
    rs.Open 
    Set DtCmbSociete.RowSource = rs
    DtCmbSociete.BoundColumn = NomCle
    DtCmbSociete.ListField = NomChampAfficher

  5. #5
    Membre éprouvé Avatar de LeXo
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    1 147
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 147
    Par défaut alors le plus simple possible
    j'ai un code super simple
    et je veux juste remplir mon datacombo avec le nom
    mais que je puisse accéder à l'id apres sans plus

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Dim base as database
    dim rs as recordset
     
    Set base = OpenDatabase(App.Path & "\Bdd\Facture.mdb")
    Set rs = base.OpenRecordset("select id,nom from societe order by nom;")
     
    DtCmbSociete.ListField = "nom"
    DtCmbSociete.BoundColumn = "nom"
    Set FrmMain.DtCmbSociete.RowSource = rs
    voila c tout et mon rs ramene tout ce que l'on veut
    pour l'id : rs.fields(0)
    pour le nom : rs.fields(1)

Discussions similaires

  1. [AC-2007] Erreur d'une expression à la propriété RowSource non valide
    Par rch05 dans le forum Requêtes et SQL.
    Réponses: 10
    Dernier message: 04/03/2011, 09h06
  2. Réponses: 2
    Dernier message: 13/10/2009, 14h57
  3. Probleme avec la propriété RowSource
    Par nsqualli dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 22/01/2009, 17h37
  4. à propos des propriétés du datacombo
    Par tinhinan6 dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 16/01/2007, 01h01
  5. Réponses: 7
    Dernier message: 25/07/2006, 18h45

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