J ai une table avec plus de 4000 noms .
je d=E9sire retrouver une personne en partant des premi=E8res lettres de so=
n nom.
Donc j ai un champs texte dans lequel je tape le nom et en dessous de ce ch=
amps j ai le r=E9sultat de la requ=EAte.
je tape M et je retrouve tous les noms commen=E7ants par le lettre M
... MU .......................................................MU
.... MUL ......................................................MUL
ensuite dans le peu de lignes qui reste je s=E9lectionne la bonne personne.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
JeanPaulo
Jose Muller wrote in news::
bonjour,
J ai une table avec plus de 4000 noms . je désire retrouver une personne en partant des premières lettres de son nom.
Donc j ai un champs texte dans lequel je tape le nom et en dessous de ce champs j ai le résultat de la requête.
je tape M et je retrouve tous les noms commençants par le lettre M ... MU .......................................................MU .... MUL ......................................................MUL
ensuite dans le peu de lignes qui reste je sélectionne la bonne personne.
ACCESS 2010 merci
Bonjour en access 2003, j'ai fait ça. Mon système permet de dépasser 65000 entrées sur le champ de recherche (séparé du champ d'affichage:
Sub Find_film_AfterUpdate() ' Find the record that matches the control. DoEvents Me.RecordsetClone.FindFirst "[Film_index] = " & Me![Find_Film] Me.Bookmark = Me.RecordsetClone.Bookmark 'Me![Find_Film].SetFocus 'Old_tit = Me![Find_Film].Text Find_Film_fini = True Me![Film_Date].SetFocus End Sub
Private Sub Find_film_Change() ' ' remplir la liste de recherche du titre ' soit avec tout, soit avec un ou deux lettres de Prem_let ' il n'y a pas besoin de requery pour activer la liste (ceci ' nécessaire au delà de 65000 records !) ' Version simplifiée et gestion des "'" 11/04/2006 Dim ssql As String Dim deb As String If Find_Film_fini = True Then Exit Sub deb = Me![Find_Film].Text Select Case Len(deb) Case 0: ssql = "" Case 1: If deb = "'" Then deb = "" End If ssql = "SELECT Table_films.Film_index, Table_films.Film_titre, Table_films.Film_Date, listenom.nom_divers " _ & "FROM Table_films INNER JOIN listenom ON Table_films.Film_réalisateur = listenom.recordnum " _ & "WHERE Film_titre Like '" & deb & "*' ORDER BY Table_films.Film_titre, Table_films.Film_Date;" Case Else: If Left$(deb, 1) = "'" Then Mid$(deb, 1, 1) = "?" End If If Mid$(deb, 2, 1) = "'" Then Mid$(deb, 2, 1) = "?" End If deb = Left$(deb, 2) ssql = "SELECT Table_films.Film_index, Table_films.Film_titre, Table_films.Film_Date, listenom.nom_divers " _ & "FROM Table_films INNER JOIN listenom ON Table_films.Film_réalisateur = listenom.recordnum " _ & "WHERE Film_titre Like '" & deb & "*' ORDER BY Table_films.Film_titre, Table_films.Film_Date;" End Select If deb = "" Then Me![Find_Film].RowSource = "" Else Me![Find_Film].RowSource = ssql End If Me![Find_Film].Dropdown End Sub
Private Sub Find_film_GotFocus() Find_Film_fini = False End Sub
On peut simplifer si la liste est courte, en ne créant pas une requête 'mobile'.
Dans le champ de recherche, dès qu'on tape une lettre, on a la liste de tout les enregistrement qui commencent ainsi.
C'est beaucoup plus rapide et pratique que de faire une 'recherche'
Jose Muller <papyzoucam@gmail.com> wrote in
news:f1ad6c00-939a-4552-a4b6-e5ee84da7714@googlegroups.com:
bonjour,
J ai une table avec plus de 4000 noms .
je désire retrouver une personne en partant des premières lettres de
son nom.
Donc j ai un champs texte dans lequel je tape le nom et en dessous de
ce champs j ai le résultat de la requête.
je tape M et je retrouve tous les noms commençants par le lettre M
... MU .......................................................MU
.... MUL ......................................................MUL
ensuite dans le peu de lignes qui reste je sélectionne la bonne
personne.
ACCESS 2010
merci
Bonjour
en access 2003, j'ai fait ça. Mon système permet de dépasser 65000
entrées
sur le champ de recherche (séparé du champ d'affichage:
Sub Find_film_AfterUpdate()
' Find the record that matches the control.
DoEvents
Me.RecordsetClone.FindFirst "[Film_index] = " & Me![Find_Film]
Me.Bookmark = Me.RecordsetClone.Bookmark
'Me![Find_Film].SetFocus
'Old_tit = Me![Find_Film].Text
Find_Film_fini = True
Me![Film_Date].SetFocus
End Sub
Private Sub Find_film_Change()
'
' remplir la liste de recherche du titre
' soit avec tout, soit avec un ou deux lettres de Prem_let
' il n'y a pas besoin de requery pour activer la liste (ceci
' nécessaire au delà de 65000 records !)
' Version simplifiée et gestion des "'" 11/04/2006
Dim ssql As String
Dim deb As String
If Find_Film_fini = True Then Exit Sub
deb = Me![Find_Film].Text
Select Case Len(deb)
Case 0:
ssql = ""
Case 1:
If deb = "'" Then
deb = ""
End If
ssql = "SELECT Table_films.Film_index,
Table_films.Film_titre, Table_films.Film_Date, listenom.nom_divers " _
& "FROM Table_films INNER JOIN listenom ON
Table_films.Film_réalisateur = listenom.recordnum " _
& "WHERE Film_titre Like '" & deb & "*' ORDER BY
Table_films.Film_titre, Table_films.Film_Date;"
Case Else:
If Left$(deb, 1) = "'" Then
Mid$(deb, 1, 1) = "?"
End If
If Mid$(deb, 2, 1) = "'" Then
Mid$(deb, 2, 1) = "?"
End If
deb = Left$(deb, 2)
ssql = "SELECT Table_films.Film_index,
Table_films.Film_titre, Table_films.Film_Date, listenom.nom_divers " _
& "FROM Table_films INNER JOIN listenom ON
Table_films.Film_réalisateur = listenom.recordnum " _
& "WHERE Film_titre Like '" & deb & "*' ORDER BY
Table_films.Film_titre, Table_films.Film_Date;"
End Select
If deb = "" Then
Me![Find_Film].RowSource = ""
Else
Me![Find_Film].RowSource = ssql
End If
Me![Find_Film].Dropdown
End Sub
Private Sub Find_film_GotFocus()
Find_Film_fini = False
End Sub
On peut simplifer si la liste est courte, en ne créant pas une requête
'mobile'.
Dans le champ de recherche, dès qu'on tape une lettre, on a la liste
de tout les enregistrement qui commencent ainsi.
C'est beaucoup plus rapide et pratique que de faire une 'recherche'
J ai une table avec plus de 4000 noms . je désire retrouver une personne en partant des premières lettres de son nom.
Donc j ai un champs texte dans lequel je tape le nom et en dessous de ce champs j ai le résultat de la requête.
je tape M et je retrouve tous les noms commençants par le lettre M ... MU .......................................................MU .... MUL ......................................................MUL
ensuite dans le peu de lignes qui reste je sélectionne la bonne personne.
ACCESS 2010 merci
Bonjour en access 2003, j'ai fait ça. Mon système permet de dépasser 65000 entrées sur le champ de recherche (séparé du champ d'affichage:
Sub Find_film_AfterUpdate() ' Find the record that matches the control. DoEvents Me.RecordsetClone.FindFirst "[Film_index] = " & Me![Find_Film] Me.Bookmark = Me.RecordsetClone.Bookmark 'Me![Find_Film].SetFocus 'Old_tit = Me![Find_Film].Text Find_Film_fini = True Me![Film_Date].SetFocus End Sub
Private Sub Find_film_Change() ' ' remplir la liste de recherche du titre ' soit avec tout, soit avec un ou deux lettres de Prem_let ' il n'y a pas besoin de requery pour activer la liste (ceci ' nécessaire au delà de 65000 records !) ' Version simplifiée et gestion des "'" 11/04/2006 Dim ssql As String Dim deb As String If Find_Film_fini = True Then Exit Sub deb = Me![Find_Film].Text Select Case Len(deb) Case 0: ssql = "" Case 1: If deb = "'" Then deb = "" End If ssql = "SELECT Table_films.Film_index, Table_films.Film_titre, Table_films.Film_Date, listenom.nom_divers " _ & "FROM Table_films INNER JOIN listenom ON Table_films.Film_réalisateur = listenom.recordnum " _ & "WHERE Film_titre Like '" & deb & "*' ORDER BY Table_films.Film_titre, Table_films.Film_Date;" Case Else: If Left$(deb, 1) = "'" Then Mid$(deb, 1, 1) = "?" End If If Mid$(deb, 2, 1) = "'" Then Mid$(deb, 2, 1) = "?" End If deb = Left$(deb, 2) ssql = "SELECT Table_films.Film_index, Table_films.Film_titre, Table_films.Film_Date, listenom.nom_divers " _ & "FROM Table_films INNER JOIN listenom ON Table_films.Film_réalisateur = listenom.recordnum " _ & "WHERE Film_titre Like '" & deb & "*' ORDER BY Table_films.Film_titre, Table_films.Film_Date;" End Select If deb = "" Then Me![Find_Film].RowSource = "" Else Me![Find_Film].RowSource = ssql End If Me![Find_Film].Dropdown End Sub
Private Sub Find_film_GotFocus() Find_Film_fini = False End Sub
On peut simplifer si la liste est courte, en ne créant pas une requête 'mobile'.
Dans le champ de recherche, dès qu'on tape une lettre, on a la liste de tout les enregistrement qui commencent ainsi.
C'est beaucoup plus rapide et pratique que de faire une 'recherche'
Jose Muller
Le mardi 6 octobre 2015 20:48:42 UTC+2, Jose Muller a écrit :
merci pour le code , et voici ma solution a partir de vos idées
Private Sub Texte2_Change() '------------------------- ' Dim sTexte As String Dim SQL_Text As String Dim us1date As Date
sTexte = Me.Texte2.Text
' date de validité us1date = Format(Date, "mm/dd/yyyy")
'3 creer une action et mettre le résultat dans le fichier temporaire SQL_Text = "INSERT INTO [FICHIERTEMP] " _ & "SELECT * " _ & "FROM [FICHIER SOCIAL] " _ & "WHERE [FICHIER SOCIAL].[AU] >= " & "#" & us1date & "#" _ & " AND " _ & "([FICHIER SOCIAL].[NOM DU CHEF] Like '" & sTexte & "*') " _ & "ORDER BY [FICHIER SOCIAL].[NOM DU CHEF] ;"
''''''''' & "WHERE ( Left([FICHIER SOCIAL].[NOM DU CHEF],Lo) Like '" & sTexte & "') ;" ''''''''' erreur
MsgBox SQL_Text DoCmd.RunSQL SQL_Text, True ' 4 afficher le resultat DoCmd.OpenTable "FICHIERTEMP", acViewNormal End Sub
albert
Bonjour Access fournit les outils nécessaires pour faire cela en mode création de formulaire, et c'est très simple, en ajoutant un Requiry après chaque recherche c'est plus rapide. Voici l'exemple que j'utilise en liste déroulante. Si vous désirez je peux faire la liste des étapes. (access 2007 et 2010)
"Jose Muller" a écrit dans le message de news: bonjour,
J ai une table avec plus de 4000 noms . je désire retrouver une personne en partant des premières lettres de son nom.
Donc j ai un champs texte dans lequel je tape le nom et en dessous de ce champs j ai le résultat de la requête.
je tape M et je retrouve tous les noms commençants par le lettre M ... MU .......................................................MU .... MUL ......................................................MUL
ensuite dans le peu de lignes qui reste je sélectionne la bonne personne.
ACCESS 2010 merci
Bonjour
Access fournit les outils nécessaires pour faire cela en mode création de
formulaire, et c'est très simple, en ajoutant un Requiry après chaque
recherche c'est plus rapide.
Voici l'exemple que j'utilise en liste déroulante. Si vous désirez je peux
faire la liste des étapes. (access 2007 et 2010)
http://www.cjoint.com/c/EJiobjs1RQD
Albert
"Jose Muller" <papyzoucam@gmail.com> a écrit dans le message de
news:f1ad6c00-939a-4552-a4b6-e5ee84da7714@googlegroups.com...
bonjour,
J ai une table avec plus de 4000 noms .
je désire retrouver une personne en partant des premières lettres de son
nom.
Donc j ai un champs texte dans lequel je tape le nom et en dessous de ce
champs j ai le résultat de la requête.
je tape M et je retrouve tous les noms commençants par le lettre M
... MU .......................................................MU
.... MUL ......................................................MUL
ensuite dans le peu de lignes qui reste je sélectionne la bonne personne.
Bonjour Access fournit les outils nécessaires pour faire cela en mode création de formulaire, et c'est très simple, en ajoutant un Requiry après chaque recherche c'est plus rapide. Voici l'exemple que j'utilise en liste déroulante. Si vous désirez je peux faire la liste des étapes. (access 2007 et 2010)
"Jose Muller" a écrit dans le message de news: bonjour,
J ai une table avec plus de 4000 noms . je désire retrouver une personne en partant des premières lettres de son nom.
Donc j ai un champs texte dans lequel je tape le nom et en dessous de ce champs j ai le résultat de la requête.
je tape M et je retrouve tous les noms commençants par le lettre M ... MU .......................................................MU .... MUL ......................................................MUL
ensuite dans le peu de lignes qui reste je sélectionne la bonne personne.
ACCESS 2010 merci
Jose Muller
merci
pas mal non plus cette solution.
Je vais l'utliser dans un autre endroit de mon programme.
merci
merci
pas mal non plus cette solution.
Je vais l'utliser dans un autre endroit de mon programme.