A LAIDE ! Saisie semie-automatique ....

LaTueuse -  
 Lupin -
Salut !!

Je suis en stage en ce moment, et je dois developper une base de données sous access ...

Mon problème, petit mais très embettant : il faut que lorsque l'utilisateur commence à taper le nom d'un de ses client dans une zone de texte, le reste apparaisse automatiquement... et je ne sais pas du tout comment y parvenir !!

si quelqu un pouvait m aider, au plus vite, ca seré cool !! mercii !

1 réponse

Lupin
 
Salut LaTueuse,

Voici un exemple que j'ai appliqué dans un bd de ma vidéothèque.
Elle est a adapter, j'y ai modifié quelque lignes sans le tester ...

Modifier une requète par programmation sur l'évènement KeyPress.

Sur l'évènement KeyPress de la zone de texte :

Private Sub Liste_Catégorie_KeyPress(KeyAscii As Integer)

Dim Chaine As String
Dim Critere As String
Dim CatégorieVidéo As String

On Error GoTo Liste_Catégorie_Err

' Ici on récupère le(s) caractères de la zone ...
CatégorieVidéo = Liste_Catégorie
' Ici on modifie la chaine SQL de recherche (le critère)
Chaine = "Select * from [Table Vidéo] where [Catégorie] = "
Critere = Chaine & """" & CatégorieVidéo & """"

' Ici, un appel a une fonction qui modifie la requète
If (ChangeRequeteDef("Requête Liste Spécifique Catégorie", Critere)) Then
' Ici, une fois la requète changé, j'appelle un formulaire
' Il serait possible ici d'effectuer un refresh du formulaire
' en cours
DoCmd.OpenForm "Formulaire Liste Spécifique Catégorie", acNormal, "", "[Catégorie]", , acNormal
End If

Liste_Catégorie_Exit:
Exit Sub

Liste_Catégorie_Err:
MsgBox Error$
Resume Liste_Catégorie_Exit

End Sub

' Ici, la fonction qui modifie la requète ...

Public Function ChangeRequeteDef(ChaineRequete As String, ChaineSQL As String) As Boolean

Dim Definition As Variant

If ((ChaineRequete = "") Or (ChaineSQL = "")) Then
ChangeRequeteDef = False
Else
Set Definition = CurrentDb.QueryDefs(ChaineRequete)
Definition.SQL = ChaineSQL
Definition.Close
RefreshDatabaseWindow
ChangeRequeteDef = True
End If

End Function

Peut-être un peu ardus ? A toi de voir !

Lupin
0