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 à 14:44
je m' en doutais !
Désolé pour toi,Je crois bien que je vais abandonné.
Les numero auto, j' aime pas trop.
Toutes fois, t' as bien viré les
<strike>rensei(0).Text = !nomenfant_ctr
rensei(1).Text = !prenomenfant_ctr
rensei(2).Text = !pere_ctr
rensei(3).Text = !mere_ctr
</strike>
<hr />... Y'en a même qui disent qu'ils l'ont vu voler.
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 201847 2 août 2008 à 14:55
c'est pas une inputbox çà....
peux-tu nous transmettre une capture de cette fenêtre, ainsi que celle de la structure de ta table stp
(en attendant tout ton code )
précise-nous aussi la version de ta base de donnée, et si RS est un objet d'ADO ou de DAO, version précise également
Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
voila le code
Private Sub Btn_let_Click(Index As Integer)
Dim sLetter As String, sQuery As String
On Error Resume Next
sLetter = Btn_let(Index).Caption
sQuery = "Select * from centre_aéré Where nomenfant_ctr LIKE '" & sLetter & "%' ORDER BY nomenfant_ctr"
rs.Close
rs.Open sQuery, MaConnection, adOpenDynamic, adLockOptimistic
rs.MoveLast
rs.MoveFirst
If rs.BOF And rs.EOF Then _
MsgBox "Aucun Enregistrement"
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 201847 2 août 2008 à 19:09
ADO et DAO ????
à n'y rien comprendre
et le code n'est pas complet là?...
et en pas à pas l'erreur est sur quelle ligne?
tes zones ne sont pas attachées aussi à la table en mode édition au moins?
voici une légère modif pour isoler plus facilement le problème, à tester....
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 & "%' WHERE 1 = 1
ORDER BY nomenfant_ctr;"
rs.Close
On Error Resume Next
rs.Open sQuery, MaConnection, adOpenDynamic,
adLockOptimistic
If Err.Number Then
MsgBox "erreur de requête :
" & Err.Description
Exit Sub
End If
rs.MoveLast
rs.MoveFirst
If Err.Number Then
MsgBox "erreur de curseur DB :
" & Err.Description
Exit Sub
End If
On Error GoTo 0 'faut arrêter la
gestion d'erreur sinon comment voir la suite...
If rs.BOF And rs.EOF Then
MsgBox "Aucun Enregistrement"
Exit Sub 'il faut quitter sinon on
continue alors qu'il n'y a rien à lire
End If
LIBRE_MAX
Messages postés1402Date d'inscriptionmardi 1 mai 2007StatutMembreDernière intervention 7 octobre 20126 3 août 2008 à 00:15
Re_
Intriguant !
Pourquoi il bug sur le champ Commune ?
Qu' est-ce qu' a de particulier ce champ ?
Est-ce que tu as une table COMMUNES en relation ?
Le control associé n' est-il pas un combo style DropDownList ?
Si oui vires
<strike>rensei(5) = rs!commune_ctr
</strike>
<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 3 août 2008 à 14:02
Bonjour patchy,
Un control est lié (ou est associé) lorsque ses proprietés DataSource et DataField sont définis.Ce que j' en doute fort puisque tu n' utilises pas de control Adodc.Néanmoins ça peut se faire par code.
Alors ou est-ce que tu en es ?
Ton projet avance ou tu comptes travailler le dimanche ?
<hr />... Y'en a même qui disent qu'ils l'ont vu voler.
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 201847 3 août 2008 à 15:13
oups petite erreur de ma part pour la requête oui :
sQuery "SELECT * FROM [centre_aéré] WHERE nomenfant_ctr LIKE '" & sLetter & "%' AND 1 1 ORDER BY nomenfant_ctr;"
beh oui 2 WHERE c'est pas très SQL tout çà ^^
et j'avais mis çà pour DAO qui a parfois besoin d'un petit coup de pouce...
LIBRE_MAX -> * c'est le gros joker LIKE de VB, % c'est le gros joker LIKE de SQL
petchy -> as-tu supprimé la ligne de connectionstring que je t'avais dit?
et pour le code j'ai mis exit sub dès qu'il y avait "un bug", qu'as-tu modifié pour arriver au 2e message d'erreur? logiquement les 2 fois le moteur SQL aurait dû te jeter à cause de la requête....
<hr size ="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
cs_petchy
Messages postés710Date d'inscriptionjeudi 20 février 2003StatutMembreDernière intervention19 mai 20154 3 août 2008 à 18:00
Re
LIBRE_MAX >> eh oui,je travaille le dimanche sur se code qui me pose un probleme
PCPT >> oui,j'ai bien supprimé la ligne
et pour la seconde erreur,c'est en cliqant une seconde fois sur le bouton qu'il m'a afficher l'erreur,je n'est rien modifier.
sinon PCPT,j'ai modifier le code ,mais c'est toujours pareil,il m'affiche se fameux "imputbox"ou un truc de se genre,à chaque
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 201847 3 août 2008 à 18:28
là j'suis à cours d'idées...
si tu veux éventuellement héberger ta source avec la DB, j'peux jeter un oeil...
++
Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
cs_petchy
Messages postés710Date d'inscriptionjeudi 20 février 2003StatutMembreDernière intervention19 mai 20154 4 août 2008 à 05:25
bonjour
merci à vous d'avoir consacrer du temps,mais je crois que vais laisser de coter cette partie pour mon projet ,et vais regarder pour éventuellement faire autre chose.
encore merci
@ plus
petchy
LIBRE_MAX
Messages postés1402Date d'inscriptionmardi 1 mai 2007StatutMembreDernière intervention 7 octobre 20126 4 août 2008 à 11:10
Bonjour petchy,
désolé(s) de n' avoir pu t' aider d' avantage.
Ne te décourages pas.Essaies plutôt d' utiliser
un objet Adodc sur ton formulaire.Lies ensuite tes textbox à cet Adodc et définis DataField pour chacun.
Il ne te resteras plus qu' à agir sur le RecordSource
de l' Adodc à chaque nouvelle requete.
Pour Suivant Precedent tu agiras sur le Recordset de l' Adodc.
Si tu n' as pas d' idée comment faire, utilises dans un premier temps l' assistant création feuille de données.
Si tu as encore des problèmes, n' hésites pas à ouvrir un topic.On fera de nouveau ce qu' on pourrait.
Bon curage.
Amicalement. .
<hr />... Y'en a même qui disent qu'ils l'ont vu voler.