cs_petchy
Messages postés710Date d'inscriptionjeudi 20 février 2003StatutMembreDernière intervention19 mai 2015
-
2 août 2008 à 10:00
LIBRE_MAX
Messages postés1402Date d'inscriptionmardi 1 mai 2007StatutMembreDernière intervention 7 octobre 2012
-
4 août 2008 à 11:10
bonjour
dans une form,j'ai 26 bouton et chaque bouton est nomé avec une lettre de l'alphabet.
j'ai aussi dans cette form des textbox.
et une base access .
est il possible lorsque je click sur un bouton il récupère le premier enregistrement de ma base comencant par cette lettre et il les associes aux textbox
voila le code pour pour la connexion avec ma base
Private Sub Form_Load()
'Type de bases de donnée pour la connexion
MaConnection.Provider = "Microsoft.Jet.OLEDB.4.0;User ID=admin;Data Source=" & App.Path & "\BD\centre_aéré.mdb;" & "Persist Security Info=False"
'Chemin de la base de donnée (APP.PATH permet de ce mettre dans le chemin
'courant la ou ce trouve le projet)
MaConnection.ConnectionString = App.Path & "\BD\centre_aéré.mdb"
'Ouverture de la connection
MaConnection.Open
'Ouverture de la requête sql dans le recordset
rs.Open "Select * from centre_aéré ORDER BY nomenfant_ctr", MaConnection, adOpenDynamic, adLockOptimistic
End Sub
exemple,si je click sur le bouton B
T1 T2 T3 T4 T5 T6 T7 T8 T9
B BB BBB BBBB BBBBB BBBBBB BBBBBBB BBBBBBBB BBBBBBBBB
ensuite avec un bouton suivant j'irai à l'autre enregistrement qui commence toujours par
le lettre qui a était sélectionner
Private Sub suivant_Click()
'Permet d'aller a l'enregistrement suivant dans la table
rs.MoveNext
'Si plus d'enregistrement aller au dernier
If rs.EOF Then
rs.MoveLast
MsgBox "dernier enregistrement de la Base !"
End Sub
merci
@ plus
petchy
LIBRE_MAX
Messages postés1402Date d'inscriptionmardi 1 mai 2007StatutMembreDernière intervention 7 octobre 20126 2 août 2008 à 11:13
Salut,
il suffit de récupèrer la caption de ton boutton
et de le passer en paramètre à ta requete.
Mais avant je te conseille de disposer tes bouttns en collection.
Btn(0), Btn(1), Btn(2)...etc pour n' avoir qu'un seul l' evenement Click.
Private Sub Btn_Click(Index As Integer)
Dim sLetter As String,sQuery As String
sLetter=Btn(Index).Caption
sQuery= "Select * from centre_aéré Where nomenfant_ctr LIKE '" & _
sLetter & "'* ORDER BY nomenfant_ctr"
rs.Open sQuery, MaConnection, adOpenDynamic, adLockOptimistic
...
<Traitement>
End Sub
<hr />... Y'en a même qui disent qu'ils l'ont vu voler.
LIBRE_MAX
Messages postés1402Date d'inscriptionmardi 1 mai 2007StatutMembreDernière intervention 7 octobre 20126 2 août 2008 à 11:18
Private Sub suivant_Click()
'Permet d'aller a l'enregistrement suivant dans la table
'ATTENTION ! tester avant de se deplacer
If Not (rs.EOF) Then
rs.MoveNext
Else
' plus d'enregistrement aller au dernier
rs.MoveLast
MsgBox "dernier enregistrement de la Base !"
End If
End Sub
<hr />... Y'en a même qui disent qu'ils l'ont vu voler.
cs_petchy
Messages postés710Date d'inscriptionjeudi 20 février 2003StatutMembreDernière intervention19 mai 20154 2 août 2008 à 11:36
Re
merci de me répondre,mais ça ne fonctionne pas
quand je click 1 fois rien ne se passe,et si je click une sconde fois,il me mets un messge d'erreur 3705
voila le code
Private Sub Btn_let_Click(Index As Integer)
Dim sLetter As String, sQuery As String
sLetter = Btn_let(Index).Caption
sQuery = "Select * from centre_aéré Where nomenfant_ctr LIKE '" & sLetter & "'* ORDER BY nomenfant_ctr"
LIBRE_MAX
Messages postés1402Date d'inscriptionmardi 1 mai 2007StatutMembreDernière intervention 7 octobre 20126 2 août 2008 à 11:55
Tu ne nous aide pas beaucoup !
Ou est la description de l' erreur ?
J' ai du la chercher..
Quoiqu' il en soit, il s' agit probablement de :
'Ouverture de la connection
MaConnection.Open
En effet il faut tester avant si la connection n' est pas déjà ouverte.
Pas sûr de la synthaxe:
If MaConnection.State=0 Then MaConnection.Open
<hr />... Y'en a même qui disent qu'ils l'ont vu voler.
Vous n’avez pas trouvé la réponse que vous recherchez ?
LIBRE_MAX
Messages postés1402Date d'inscriptionmardi 1 mai 2007StatutMembreDernière intervention 7 octobre 20126 2 août 2008 à 12:15
enchaines avec ceci en corrigeant une erreur au niveau de LIKE ...*'
sQuery = "Select * from centre_aéré Where nomenfant_ctr LIKE '" & sLetter & "*' ORDER BY nomenfant_ctr"
rs.Open sQuery, MaConnection, adOpenDynamic, adLockOptimistic
With rs
If .Bof And .Eof Then
MshBox "Aucun Enregistrement
Else
rensei(0) = !nomenfant_ctr
rensei(1) = !prenomenfant_ctr
rensei(2) = !pere_ctr
rensei(3) = !mere_ctr
End If
End With
<hr />... Y'en a même qui disent qu'ils l'ont vu voler.
cs_petchy
Messages postés710Date d'inscriptionjeudi 20 février 2003StatutMembreDernière intervention19 mai 20154 2 août 2008 à 12:19
désolé
mais j'ai toujours l'erreur sur :
"cette opération n'est pas autorisée si l'objet est ouvert"
rs.Open sQuery, MaConnection, adOpenDynamic, adLockOptimistic
petchy
cs_petchy
Messages postés710Date d'inscriptionjeudi 20 février 2003StatutMembreDernière intervention19 mai 20154 2 août 2008 à 12:53
ça se précise
j'ai modifier la requête LIKE avec %.
Dim sLetter As String, sQuery As String
sLetter = Btn_let(Index).Caption
rs.Close
sQuery = "Select * from centre_aéré Where nomenfant_ctr LIKE '" & sLetter & "%' ORDER BY nomenfant_ctr"
rs.Open sQuery, MaConnection, adOpenDynamic, adLockOptimistic
With rs
If .BOF And .EOF Then
MsgBox "Aucun Enregistrement"
Else
rensei(0) = rs!nomenfant_ctr
rensei(1) = rs!prenomenfant_ctr
mais maintenant quand je click sur un bouton pour faire afficher les enregistrement.
jai des imputbox qui s'affiche :
Binding Collection Error
Field not updatable,bound property Name : Text,Field Name : nomenfant_ctr
sur chaque textbox,et quand je fait OK sur les imputbox les infos s'affiche dans tous les textbox.
LIBRE_MAX
Messages postés1402Date d'inscriptionmardi 1 mai 2007StatutMembreDernière intervention 7 octobre 20126 2 août 2008 à 13:06
J' ai pas vraiment d' idée du pourquoi,mais à tout hasard:
With rs
If .Bof And .Eof Then
MshBox "Aucun Enregistrement
Else
rensei(0).Text = !nomenfant_ctr
rensei(1).Text = !prenomenfant_ctr
rensei(2).Text = !pere_ctr
rensei(3).Text = !mere_ctr
End If
End With
ou alors, si tes TextBx sont liés pas la peine d' affecter ...
cs_petchy
Messages postés710Date d'inscriptionjeudi 20 février 2003StatutMembreDernière intervention19 mai 20154 2 août 2008 à 14:07
j'ai tous essayer mais j'ai toujours c'est fameux imputbox des qu'ils y a un changement dans les textbox.
et quand je click sur le bouton suivant il n'y à pas de changement.
petchy