Bonjour,
Le précédent post que j'avais effectué était plutôt vague.
J'ai suivi des tutoriels sur youtube pour parvenir à créer un formulaire de recherche avec VBA.
Lorsque j’exécute le code ce message d'erreur s'affiche: Erreur d’exécution 3464, Type de données incompatibles dans l'expression du critère.
Au cas où vous auriez un probleme pour ouvrir la base de données en pièce jointe , voici le code vba:
Merci d'avance de votre aide
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42 Option Compare Database Private Sub Form_Open(Cancel As Integer) ListChampNbr.SetFocus ListChampNbr.ListIndex = 0 ListChampTxt.SetFocus ListChampTxt.ListIndex = 0 End Sub Private Sub ListChampNbr_KeyDown(KeyCode As Integer, Shift As Integer) KeyCode = 0 ' désactive la saisie End Sub Private Sub ListChampTxt_KeyDown(KeyCode As Integer, Shift As Integer) KeyCode = 0 ' désactive la saisie End Sub Private Sub Commande21_Click() Dim NomChamp As String ListChampTxt.SetFocus NomChamp = ListChampTxt.ItemData(ListChampTxt.ListIndex) Txt.SetFocus DoCmd.OpenForm "Formulaire_Membre" If Filtretxt.Value = 1 Then 'égal Forms!Formulaire_Membre.RecordSource = "Select * from Membre where " & NomChamp & _ "=" & """" & Txt.Text & """" ElseIf Filtretxt.Value = 2 Then ' commence par Forms!Formulaire_Membre.RecordSource = "Select * from Membre where " & NomChamp & _ " Like '" & Txt.Text & "*'" ElseIf Filtretxt.Value = 3 Then 'se termine par Forms!Formulaire_Membre.RecordSource = "Select * from Membre where " & NomChamp & _ " Like '*" & Txt.Text & "'" ElseIf Filtretxt.Value = 4 Then ' contient Forms!Formulaire_Membre.RecordSource = "Select * from Membre where " & NomChamp & _ " Like '*" & Txt.Text & "*'" ElseIf Filtretxt.Value = 5 Then 'différent de Forms!Formulaire_Membre.RecordSource = "Select * from Membre where " & NomChamp & _ "<>" & """" & Txt.Text & """" End If End Sub
Partager