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 :

Probleme de Code pour combobox et base de donnée


Sujet :

VB 6 et antérieur

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 72
    Points : 40
    Points
    40
    Par défaut [résolu] Probleme de Code pour combobox et base de donnée
    Bonjour à tous

    Voila mon souci

    Pour le moment je recupere 1 champs de ma table dans mon combobox

    J'ai mis le code de facon à avoir 2 champs deans mon combobox et depuis j'ai une erreur

    Voici le 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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    Private Sub Form_Initialize()
    fichier = "marque.txt"
    fichier2 = "materiel.txt"
     Dim db As DAO.Database
        Dim rs As DAO.Recordset
        
        Me.combnom.Clear
        
        'ouverture la plus simple en mode partagé
        Set db = DAO.Workspaces(0).OpenDatabase(MA_BASE_ACCESS, False, False)
        
        'Ouverture d'une requête sur la table, dbForwardOnly = lecture en avant = plus rapide
        Set rs = db.OpenRecordset("select * from [coordonnees];", , dbForwardOnly)
        
        'Tant qu'il en reste
        Do While Not rs.EOF
            'Ajout dans la combo
            Me.combnom.AddItem rs.Fields(0).ValueICI LA LIGNE D'ORIGINE 1 CHAMPS
    
    DES QUE JE REMPLACE LA LIGNE DU DESSUS PAR CELLE CI J'AI LE PROBLEME PLUS BAS
            'Me.combnom.AddItem rs!nom & " " & rs!prenom
            
            'passe au suivant
            rs.MoveNext
        Loop
        
        'On affiche le premier élément de la liste comme sélectionné
        If Me.combnom.ListCount > 0 Then
            Me.combnom.ListIndex = 0
        End If
       
        rs.Close
       
        db.Close
       
        Set rs = Nothing
     
        Set db = Nothing
    
    End Sub
    
    Private Sub Form_Load()
    txtdate.Text = DateName(Date)
    ' ouverture de la connexion à la BDD avec la technique ADO activer ado 2.7
    Set Cnx = New ADODB.Connection
        Cnx.Provider = "Microsoft.Jet.Oledb.4.0"
        Cnx.ConnectionString = App.Path & "\basesav.mdb"
        Cnx.Open
    
    Set str = fso.OpenTextFile(fichier)
    Do While str.AtEndOfStream = False
        combomarque.AddItem str.ReadLine
    Loop
    str.Close
    Set str = fso.OpenTextFile(fichier2)
    Do While str.AtEndOfStream = False
        combotypemateriel.AddItem str.ReadLine
    Loop
    str.Close
    
    End Sub
    
    Private Sub Cmdajou_Click()
    combomarque.AddItem txtajoutmarque.Text
    Set strm = fso.OpenTextFile(fichier, ForAppending, True)
    strm.WriteLine txtajoutmarque.Text
    strm.Close
    End Sub
    
    Private Sub Cmdajoup_Click()
    combotypemateriel.AddItem txtajoutperip.Text
    Set strm = fso.OpenTextFile(fichier2, ForAppending, True)
    strm.WriteLine txtajoutperip.Text
    strm.Close
    End Sub
    
    Private Sub cmdajoutclient_Click()
    Frm2.Hide
    frmajoutclient.Show
    frmajoutclient.WebBrowser1.Navigate App.Path & "\coordonnees.htm"
    End Sub
    
    Private Sub cmdok_Click()
    
    LE PROBLEME ARRIVE ICI
    frmdescriptionpanne.Show
       Set corde = New ADODB.Recordset
        corde.Open "coordonnees", Cnx, adOpenDynamic, adLockOptimistic
        corde.Find "Nom=" & "'" & combnom.Text & "'" 
           
        frmdescriptionpanne.lblnom.Caption = corde!prenom & " " & combnom.Text 
        frmdescriptionpanne.lbltel.Caption = corde!telephone
        frmdescriptionpanne.lbladresse.Caption = corde!adresse & ", " & corde!codepostal & ", " & corde!ville
       
        corde.Close
    Si vous avez une idee
    Merci d'avance
    Fredo

  2. #2
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Points : 5 535
    Points
    5 535
    Par défaut
    Bonjour,

    Question sans réponse jusqu'à présent :

    Ta combobox est-elle (oui ou non) liée à ta base de données ?

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 72
    Points : 40
    Points
    40
    Par défaut
    Oui elle est liée

  4. #4
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Points : 5 535
    Points
    5 535
    Par défaut
    Liée ?

    Alors (voir ton aide en ligne) ses articles sont le reflet de ta base, sans pouvoir être modifiés

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 72
    Points : 40
    Points
    40
    Par défaut
    Ah donc pas d'aide possible ( ou une piste )

    Le simple fait d'afficher 2 champs de ma table fait planter l'appli

    P.S : les deux champs s'affiche bien mais des lors que je valide pour passer sur un autre form la y a erreur

  6. #6
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Points : 5 535
    Points
    5 535
    Par défaut
    Une Combobox liée a un nom : DBCombo.

    Ouvre ton aide en ligne sur ce mot puis prends un autre chemin...

  7. #7
    Membre expérimenté
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    1 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Argentine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 173
    Points : 1 418
    Points
    1 418
    Par défaut
    Et quel est le message d'erreur ?

    ?err.number

    ?err.description

  8. #8
    Membre du Club
    Inscrit en
    Janvier 2007
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 48
    Points : 41
    Points
    41
    Par défaut
    bonjour,
    si ta pas encore trouver la solution a votre probleme je vous propose une
    j ai l 'utiliser et elle a fonctionner tres bien
    le voila le 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
    '''''''''''''''''''''''''''''''''''''''''''''
      'remplir combo
      strNomCode = "SELECT * FROM agent"   'agent c le nom de la table 
      Set rstNomCode = dbsBaseMedic.OpenRecordset(strNomCode)
      Combo.Clear
      rstNomCode.MoveLast
      rstNomCode.MoveFirst
      m = rstNomCode.Fields(1)
      p = rstNomCode.Fields(2)
      If i = o Then
        Combo.Text = m & " " & p
      End If
      n = rstNomCode.RecordCount
      For i = 0 To n - 1
        s = rstNomCode.Fields(1) & " " & rstNomCode.Fields(2)
        Combo.AddItem s
        rstNomCode.MoveNext
      Next i
    si tu comprend pas qlq chose il suffit de poser vous questions
    boncourage.

Discussions similaires

  1. [WD18] Probleme executable: Chemin pour parcourir la base de données
    Par PierreXV dans le forum WinDev
    Réponses: 3
    Dernier message: 29/08/2014, 09h14
  2. Réponses: 2
    Dernier message: 25/06/2008, 09h58
  3. Probleme avec code pour fond musical
    Par Yanout dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 05/09/2007, 17h12
  4. code pour compacter une base à sa fermeture
    Par garsflo dans le forum VBA Access
    Réponses: 2
    Dernier message: 02/08/2007, 16h57
  5. Probleme pour créer un base de données...
    Par _matt_44 dans le forum PostgreSQL
    Réponses: 5
    Dernier message: 03/06/2005, 14h36

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