OVH Cloud OVH Cloud

Connection base donnée

3 réponses
Avatar
Franck
Bonjour a tous,
j'ai un projet vb qui ce connect a une base de donnée.
jusque la tout va bien. Dans un de mes form j'ai mit un textbox ou je rentre
un numéro de téléphone. Est-il possible que lorsqu'il trouve le numéro de
téléphone dans ma base de donnée qu'il entre automatiquement le nom...prénom
adresse de la personne dans mes autre textbox.

Merci de votre aide.

3 réponses

Avatar
Jean-Marc
"Franck" a écrit dans le message de
news:
Bonjour a tous,
j'ai un projet vb qui ce connect a une base de donnée.
jusque la tout va bien. Dans un de mes form j'ai mit un textbox ou je


rentre
un numéro de téléphone. Est-il possible que lorsqu'il trouve le numéro


de
téléphone dans ma base de donnée qu'il entre automatiquement le


nom...prénom
adresse de la personne dans mes autre textbox.



Hello,

Oui on peut :-) Voici m'illustartion dans le mini programme
suivant.
Il faut 3 textBoxes, un bouton de commande et une base de données
Access:
C:repertoire.mdb.

Dans cette base, une table nommée 'fiches' et dans cette table au
moins les 3 champs suivants:
nom
prenom
telephone

voici un exemple de table:

id nom prenom telephone
-------------------------------------
1 Dupont Pierre 00 32 10 22 44 78
2 Durand Paul 00 33 99 36 42 21
3 Martin Jacques 00 32 10 45 75 99


Dans ce programme, on entre le numéro de téléphone dans
la textBox nommée txtTelephone. Si le numéro peut être
trouvé dans la db, alors les infos de nom et prenom
sont écrites dans les textBoxes correspodnates (txtNom
et txtPrenom).

Et voici le code

' 8<-------------------------------------------------------
Option Explicit

Private Sub cmdCherche_Click()
Dim db As Database
Dim rs As Recordset
Dim sqlQuery As String
Dim telephone As String

Set db = OpenDatabase("c:repertoire.mdb")

telephone = txtTelephone.Text
sqlQuery = "SELECT nom, prenom FROM fiches WHERE "
sqlquery = sqlQuery & "telephone ='" & telephone & "'"

Set rs = db.OpenRecordset(sqlQuery)
If rs.EOF = True And rs.BOF = True Then
' pas de record correspondant, on peut
' afficher une petite msgbox
MsgBox "Pas de fiches avec ce numéro de téléphone"
Else
' on met à jour les 2 autres textBoxes

' on prend le premier record ici, pour simplifier
' on ne gère pas le cas ou il y aurait plusieurs
' fiches avec ce même numéro
txtNom.Text = rs.Fields("nom")
txtPrenom.Text = rs.Fields("prenom")
End If
rs.Close
db.Close
Set rs = Nothing
Set db = Nothing
End Sub

Private Sub Form_Load()
' vide les textBoxes
txtNom.Text = ""
txtPrenom.Text = ""
txtTelephone.Text = ""
End Sub

' 8<-------------------------------------------------------

Bon amusement :-)

--
Jean-marc
Tester mon serveur (VB6) => http://myjmnhome.dyndns.org
"There are only 10 kind of people
those who understand binary and those who don't."
mailto: remove '_no_spam_' ;
Avatar
Franck
Merci a toi sa fonctionne #1
:)
"Jean-Marc" a écrit dans le message de news:
43cd402e$0$13572$
"Franck" a écrit dans le message de
news:
Bonjour a tous,
j'ai un projet vb qui ce connect a une base de donnée.
jusque la tout va bien. Dans un de mes form j'ai mit un textbox ou je


rentre
un numéro de téléphone. Est-il possible que lorsqu'il trouve le numéro


de
téléphone dans ma base de donnée qu'il entre automatiquement le


nom...prénom
adresse de la personne dans mes autre textbox.



Hello,

Oui on peut :-) Voici m'illustartion dans le mini programme
suivant.
Il faut 3 textBoxes, un bouton de commande et une base de données
Access:
C:repertoire.mdb.

Dans cette base, une table nommée 'fiches' et dans cette table au
moins les 3 champs suivants:
nom
prenom
telephone

voici un exemple de table:

id nom prenom telephone
-------------------------------------
1 Dupont Pierre 00 32 10 22 44 78
2 Durand Paul 00 33 99 36 42 21
3 Martin Jacques 00 32 10 45 75 99


Dans ce programme, on entre le numéro de téléphone dans
la textBox nommée txtTelephone. Si le numéro peut être
trouvé dans la db, alors les infos de nom et prenom
sont écrites dans les textBoxes correspodnates (txtNom
et txtPrenom).

Et voici le code

' 8<-------------------------------------------------------
Option Explicit

Private Sub cmdCherche_Click()
Dim db As Database
Dim rs As Recordset
Dim sqlQuery As String
Dim telephone As String

Set db = OpenDatabase("c:repertoire.mdb")

telephone = txtTelephone.Text
sqlQuery = "SELECT nom, prenom FROM fiches WHERE "
sqlquery = sqlQuery & "telephone ='" & telephone & "'"

Set rs = db.OpenRecordset(sqlQuery)
If rs.EOF = True And rs.BOF = True Then
' pas de record correspondant, on peut
' afficher une petite msgbox
MsgBox "Pas de fiches avec ce numéro de téléphone"
Else
' on met à jour les 2 autres textBoxes

' on prend le premier record ici, pour simplifier
' on ne gère pas le cas ou il y aurait plusieurs
' fiches avec ce même numéro
txtNom.Text = rs.Fields("nom")
txtPrenom.Text = rs.Fields("prenom")
End If
rs.Close
db.Close
Set rs = Nothing
Set db = Nothing
End Sub

Private Sub Form_Load()
' vide les textBoxes
txtNom.Text = ""
txtPrenom.Text = ""
txtTelephone.Text = ""
End Sub

' 8<-------------------------------------------------------

Bon amusement :-)

--
Jean-marc
Tester mon serveur (VB6) => http://myjmnhome.dyndns.org
"There are only 10 kind of people
those who understand binary and those who don't."
mailto: remove '_no_spam_' ;



Avatar
Jean-Marc
Merci du retour d'info :-)

--
Jean-marc
Tester mon serveur (VB6) => http://myjmnhome.dyndns.org
"There are only 10 kind of people
those who understand binary and those who don't."
mailto: remove '_no_spam_' ;



"Franck" a écrit dans le message de
news:%
Merci a toi sa fonctionne #1
:)
"Jean-Marc" a écrit dans le message de


news:
43cd402e$0$13572$
> "Franck" a écrit dans le message de
> news:
>> Bonjour a tous,
>> j'ai un projet vb qui ce connect a une base de donnée.
>> jusque la tout va bien. Dans un de mes form j'ai mit un textbox ou


je
> rentre
>> un numéro de téléphone. Est-il possible que lorsqu'il trouve le


numéro
> de
>> téléphone dans ma base de donnée qu'il entre automatiquement le
> nom...prénom
>> adresse de la personne dans mes autre textbox.
>
> Hello,
>
> Oui on peut :-) Voici m'illustartion dans le mini programme
> suivant.
> Il faut 3 textBoxes, un bouton de commande et une base de données
> Access:
> C:repertoire.mdb.
>
> Dans cette base, une table nommée 'fiches' et dans cette table au
> moins les 3 champs suivants:
> nom
> prenom
> telephone
>
> voici un exemple de table:
>
> id nom prenom telephone
> -------------------------------------
> 1 Dupont Pierre 00 32 10 22 44 78
> 2 Durand Paul 00 33 99 36 42 21
> 3 Martin Jacques 00 32 10 45 75 99
>
>
> Dans ce programme, on entre le numéro de téléphone dans
> la textBox nommée txtTelephone. Si le numéro peut être
> trouvé dans la db, alors les infos de nom et prenom
> sont écrites dans les textBoxes correspodnates (txtNom
> et txtPrenom).
>
> Et voici le code
>
> ' 8<-------------------------------------------------------
> Option Explicit
>
> Private Sub cmdCherche_Click()
> Dim db As Database
> Dim rs As Recordset
> Dim sqlQuery As String
> Dim telephone As String
>
> Set db = OpenDatabase("c:repertoire.mdb")
>
> telephone = txtTelephone.Text
> sqlQuery = "SELECT nom, prenom FROM fiches WHERE "
> sqlquery = sqlQuery & "telephone ='" & telephone & "'"
>
> Set rs = db.OpenRecordset(sqlQuery)
> If rs.EOF = True And rs.BOF = True Then
> ' pas de record correspondant, on peut
> ' afficher une petite msgbox
> MsgBox "Pas de fiches avec ce numéro de téléphone"
> Else
> ' on met à jour les 2 autres textBoxes
>
> ' on prend le premier record ici, pour simplifier
> ' on ne gère pas le cas ou il y aurait plusieurs
> ' fiches avec ce même numéro
> txtNom.Text = rs.Fields("nom")
> txtPrenom.Text = rs.Fields("prenom")
> End If
> rs.Close
> db.Close
> Set rs = Nothing
> Set db = Nothing
> End Sub
>
> Private Sub Form_Load()
> ' vide les textBoxes
> txtNom.Text = ""
> txtPrenom.Text = ""
> txtTelephone.Text = ""
> End Sub
>
> ' 8<-------------------------------------------------------
>
> Bon amusement :-)
>
> --
> Jean-marc
> Tester mon serveur (VB6) => http://myjmnhome.dyndns.org
> "There are only 10 kind of people
> those who understand binary and those who don't."
> mailto: remove '_no_spam_' ;
>