dannymortier
Messages postés11Date d'inscriptionsamedi 18 septembre 2004StatutMembreDernière intervention16 janvier 2010
-
31 août 2008 à 17:16
dannymortier
Messages postés11Date d'inscriptionsamedi 18 septembre 2004StatutMembreDernière intervention16 janvier 2010
-
31 août 2008 à 23:40
Boujour,
Bien qu'ayant achete la brique sur Vb6 et sur SQl, je dois reconnaitre que je tourne en rond. Le probleme des auteurs de ces livres est que pour eux bien des choses semblent tellement simples et evidentes qu'ils en oublient de l'expliquer aux neophytes de mon genre. Je ne cherche pas la simplicité car bien des applications sont disponibles sur le net pour faire ce que je veux faire. je veux simplement comprendre le fonctionnement.
Qui pourrait me donner un exemple de recherche dans une base de donnees acces via code ado:
Nom de la base de donnée cinema1.mdb
Nom de la table DIVX Noms des champs Titre, Disc, Box
Mon application est connectee a la base de donnée mais si je tente une recherche d'un titre, rien n'apparait dans le listbox. Une fois que j'aurai compris le systeme pour cette recherche, je pense que bien des choses seront bien plus claire pour moi. J'ai joint ci dessous la copie des codes. Le seul exemple que je suis parvenu a trouver utilise le controle data et pour je ne sais qu'elle raison, le controle data refuse mon fichier cinema1.mdb.
Si quelqu'un pouvait avoir la gentillesse et surtout la compréhension pour me mettre sur la bonne directiuon, je lui en serait tres reconnaissant.
Merci d'Avance
Sub ActeurSecondaire_Click()
End Sub
Private Sub Command2_Click()
End Sub
Private Sub AdoGestion_WillMove(ByVal adReason As ADODB.EventReasonEnum, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset)
AdoGestion.RecordSource = "select * From Titre"
End Sub
Private Sub Text3_Change()
End Sub
Private Sub Text6_Change()
End Sub
Private Sub CmdPrecedent_Click()
' Recule d'un enregistrement dans les données
If Not AdoGestion.Recordset.BOF Then
AdoGestion.Recordset.MovePrevious
If AdoGestion.Recordset.BOF Then
AdoGestion.Recordset.MoveNext
End If
End If
End Sub
Private Sub CmdQuitter_Click()
Dim egal As Byte
egal = MsgBox("Etes-vous sur de vouloir quitter?", 33, "Confimation")
If egal = 1 Then
End
Else
Exit Sub
End If
End Sub
Private Sub CmdRecherche_Click()
frmGestion.Hide
frmRecherche.Show
End Sub
Private Sub CmdSuivant_Click()
' Avance d'un enregistrement dans les donnees
If Not AdoGestion.Recordset.EOF Then
AdoGestion.Recordset.MoveNext
If AdoGestion.Recordset.EOF Then
AdoGestion.Recordset.MovePrevious
End If
End If
End Sub
Private Sub Label2_Click()
End Sub
Private Sub File1_Click()
End Sub
Private Sub AdoRechTitre_WillMove(ByVal adReason As ADODB.EventReasonEnum, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset)
AdoRechTitre.RecordSource = "Select Titre, Box, Disc FROM DIVX"
End Sub
Private Sub Command1_Click()
Dim Num As Long
Dim strreponse As String
Dim strTitre As String
Num = 0
strreponse = InputBox("Entrez le nom d'un film")
intResponse = MsgBox(" Vous Recherchez " & strreponse, 1)
If strreponse = Empty Then
intResponse = MsgBox("Recherche annulée")
End If
End Sub
dan
A voir également:
Recherche de données dans une bd access via controle ado
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 201847 31 août 2008 à 18:16
salut,
le code est complet où il manque les déclarations?
tu passes pas un contrôle DATA ADODB apparemment, est-ce que tes champs sont liés à cet objet?
(par exemple as-tu changé, en mode conception, une propriété DataSource d'une Listbox?)
uniquement par code tu trouveras une classe sur www.codyx.org mais çà ne semble pas être ta demande....
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
LIBRE_MAX
Messages postés1402Date d'inscriptionmardi 1 mai 2007StatutMembreDernière intervention 7 octobre 20126 31 août 2008 à 18:36
Salut ,
Voilà le principe de la recherche:
Private Sub CmdRecherche_Click()
frmGestion.Hide
frmRecherche.Show
End Sub
Dans ton formulaire frmRecherche, tu disposes sur une frame
trois OptionButton ,
-Titre
-Disc
-Box
Avec l' un des trois par default à true (mettons Titre)
Tu ajoutes un TextBox et un ButtonCommand cmdRechrcher.
Dans
Sub cmdRechrcher._Click ()
'Contenu du TextBox
Dim cText As String
cText=TextBox1.Text
If cText="" Then Exit Sub
'tu construit le début de ton expression
Dim sQuery As String
"Select * FROM DIVX "
'tu te renseignes sur quel critère la recherche va s' effectuer.
Dim cCritere As String
If Option1.Value=True Then
sQuery =sQuery & "WHERE Titre ='" & cText & "'"
ElseIf Option2.Value=True Then
sQuery =sQuery & "WHERE Disc ='" & cText & "'"
ElseIf Option3.Value=True Then
sQuery =sQuery & "WHERE Box ='" & cText & "'"
End If
'Tu lances ta requete selection
AdoRechTitre.RecordSource = sQuery
End Sub
Conseil:
Ne mets rien dans AdoRechTitre_WillMove.
Oublies cet evenement, il ne te servira à rien
dans ce que tu veux faire.
De plus c' est très compliqué à gérer.
dannymortier
Messages postés11Date d'inscriptionsamedi 18 septembre 2004StatutMembreDernière intervention16 janvier 2010 31 août 2008 à 23:40
Merci a tout le monde.Je crois que j'étais bien loin de m'y retrouver tout seul.
Je vais passer la soiree a bien essayer de comprendre le principe de recherche et je compte bien donner des nouvelles positives d'ici la fin de la semaine.