Un formulaire : form1
un groupe d'options : CadreChoix
une textbox : critereUpdate
un bouton de commande : boutonUpdate
Quand je clique sur le bouton, ma fonction va regarder l'option choisit, et construire une requete en fonction.
Tout d'abord, la fonction qui recupere l'option choisie :
Code :
- Private Function getChoixUpdate() As String
- Dim var As String
- Select Case Me.CadreChoix.Value
- Case 1
- var = "id"
- Case 2
- var = "nom"
- Case 3
- var = "prenom"
- End Select
-
- getChoixUpdate = var
- MsgBox "" & var
-
- End Function
|
Elle marche, pas de soucis.
Je recupere la valeur de ma textbox :
Code :
- Private Function getCritereUpdate() As String
- Dim var As String
- var = Me.CritereUpdate
- getCritereUpdate = var
- MsgBox "" & var
- End Function
|
Et enfin, la fonction affectée au bouton de commande.
Code :
- Private Sub BoutonUpdate_Click()
-
- DoCmd.SetWarnings True
- Dim resultat As DAO.Recordset
- Dim critere As String
- Dim requete As String
- Dim nom As String
- Dim prenom As String
- Dim num As String
- choix = getChoixUpdate()
- critere = getCritereUpdate()
- 'valcrit = getValeurUpdate()
- requete = "SELECT * from [personnes] where " & choix & " = " & critere & ""
- MsgBox "" & requete
- Set resultat = CurrentDb.OpenRecordset(requete)
- If Not resultat.EOF Then
- num = resultat.Fields("id" ).Value
- nom = resultat.Fields("nom" ).Value
- prenom = resultat.Fields("prenom" ).Value
-
- MsgBox "1 Personne trouvée :" & vbCrLf & _
- "Id : " & num & vbCrLf & _
- "Nom : " & nom & vbCrLf & _
- "Prenom : " & prenom _
- , vbInformation _
- , "Enregistrement trouvé"
-
-
- End If
- End Sub
|
Quand je prends l'option id (qui est un numero auto en base, donc un chiffre) ca marche niquel.
Ca me retourne l'enregistrement.
Par contre, quand je veux selectionner une valeur texte, ca merde
La faute à la requete qui va etre :
Code :
- Select * from personnes where nom=coucou
|
Et je pense que ca ne marche pas vu qu'il ne met pas les " autour de la valeur à chercher.
C'est bien ca?
Donc je me demande comment remédier à cela
Si quelqu'un a des idées
(et au passage, si vous vous voyez des trucs moches, énormes, à revoir, etc...j'suis preneur)
Message édité par gocho le 11-04-2008 à 14:45:38