Recherche sur simple critere [Résolu]

Signaler
Messages postés
15
Date d'inscription
vendredi 6 juillet 2007
Statut
Membre
Dernière intervention
10 novembre 2008
-
Messages postés
4822
Date d'inscription
lundi 11 novembre 2002
Statut
Membre
Dernière intervention
15 novembre 2016
-
bonjour,

j'ai une question qui va vous paraitre très bete!!!

j'ai une table avec plusieurs champs:
clés primaire
reference
nom
....

j'aimerais afficher dans plusieur textbox les different champs de ma table en  rentrant dans une textbox independante la reference que je cherche???

jusqu'a maintenant j'utiliser la fonction recherche qui est integrée mais mes collegues n'y arrive pas!!!

en bref savoir comment faire pour faire une recherche sur un critere dans matable et l'afficher soit dans une texbox ou plusieurs

merci d'avance
le debutant
 

2 réponses

Messages postés
4822
Date d'inscription
lundi 11 novembre 2002
Statut
Membre
Dernière intervention
15 novembre 2016
14
Salut,

Je dirais qu'il y a plusieurs possibilité, en voici 2 :

La première tu fais un requête de sélection avec une clause Where (qui va remplir un object RecordSet), comme cela :

La première :sSql "Select * From TaTable Where TonChamp '" & TaRecherche & "'"
  ou
sSql = "Select TonChampFind From TaTable Where TonChampFind = '" & TaRecherche & "'"    

La deuxième : Dans la requête, utiliser l'opérateur : Like
A+
Exploreur

 Linux a un noyau, Windows un pépin

 
Messages postés
4822
Date d'inscription
lundi 11 novembre 2002
Statut
Membre
Dernière intervention
15 novembre 2016
14
Re,

Tiens un exemple pour être un peu plus clair :

Dans ton projet rajoute la référence :
Microsoft ActiveX Data Objects 2.5  Library

Option Explicit
Dim Cnx As New ADODB.Connection
Dim Rst As New ADODB.RecordSet
Dim sSql As String

Private Sub CloseCnxRst ()
   On Error Resume Next
    ' Libération ressource
     Rst.Cancel
     Rst.Close
     Set Rst = Nothing
     Cnx.Cancel
     Cnx.Close
     Set Cnx = Nothing
     Err.Clear
End Sub

Private Sub Form_Load()
 
   ' Libération ressource appel Sub
    CloseCnxRst

' On prépare la connection à la base

    ' Choix du fournisseur
     Cnx.Provider = "Microsoft.jet.OLEDB.4.0"
  
      ' gestion erreur s'il y a 
      On Error Resume Next

    ' chemin de la base pour la connexion
     Cnx.ConnectionString = "CheminDeTaBase"
     
    ' Ouvre la connexion à la source
      Cnx.Open 
    
    ' Nettoyage gestionnaire d'erreur  
    Err.Clear

      ' Test Connection
       If Cnx.State = 1 then
          MsgBox "Connexion ok"
      Else
         MsgBox "Erreur Connexion"
         Exit sub
      End If

' Maintenant lancement et vérification recherche


Dim TaRecherche As String
TaRecherche = "Toto"
' Ici je vais rechercher 'toto' dans le champ reference
sSql = "Select Reference From TaTable Where Reference = '" & TaRecherche & "'"
    ' Execution requête avec paramètre recordset via CnxAdo
    On Error Resume Next
     Rst.CursorLocation = adUseClient
     Rst.Open sSql, Cnx, adOpenDynamic, adLockPessimistic
   
       ' S'il y a eu erreur informe l'utilisateur
       If Err.Number > 0 then
          MsgBox Err.Description
          Err.Clear
          CloseCnxRst
          Exit sub
      End if

    ' Vérification s'il y a un ou plusieurs record
     if Rst.RecordCount > 0 then
       ' Boucle sur le RecordSet(Rst)
        While Not Rst.Eof
                 Msgbox Rst.Fields("Reference")
                 ' Passe au suivant s'il y a 
                 Rst.MoveNext
        Wend
    Else
          ' On a rien trouvé
          MsgBox "Aucun enregistrement trouvé !"
   End if

End sub
 
Un truc du genre...quoi....


A+
Exploreur

 Linux a un noyau, Windows un pépin