Bonsoir,
Je suis débutante en VBA et sur ACCESS. Je découvre de nouvelles choses tous les jours
Je ne sais pas si vous pouvez m'aider, mais cela fait tellement longtemps que je me prends la tête sur ce problème, que je me permets de demander de l'aide
Je suis en train de faire un formulaire de recherche. Disons qu'il s'agit de retrouver des spécimens à partir d'une recherche basée sur le nom scientifique, vulgaire ou les informations de collecte.
Le soucis, c'est qu'en faisant le code VBA sur le formulaire, je me rends bien compte qu'il y a un soucis avec mon champ "num_inventaire" qui se retrouve dans plusieurs de mes tables. Et ACCESS aussi l'a bien remarqué!
J'ai essayé plusieurs solutions, notamment de spécifier le nom de la table, mais rien n'y fait J'ai toujours ce problème, et le message d'erreur "le champ spécifié peut désigner plusieurs tables ..."
Je ne sais pas si vous pouvez m'aider qu'avec le code ? Le voici:
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 Private Sub RefreshQuery() Dim SQL As String Dim SQLWhere As String Me.Refresh Me.Repaint SQL = "SELECT num_inventaire AS 'Numéro inventaire', sexe AS 'Sexe', age AS 'Age', libelle_age AS 'Statut', nom_vulgaire AS 'Nom vulgaire', nom_scientifique as 'Nom scientifique' FROM Table_espece e, Table_collection s, Table_collecte c WHERE s!num_inventaire <> 0 AND e!code_espece=s!code_espece AND c!num_inventaire=s!num_inventaire " If Not Me.txtnom = "" Then SQL = SQL & "AND (e!nom_vulgaire LIKE '*" & Me.txtnom & "*' OR e!nom_scientifique LIKE '*" & Me.txtnom & "*') " End If If Not Me.txtdatec = "" Then SQL = SQL & "AND c!date = #" & Me.txtdatec & "# " End If If Not Me.txtcommunec = "" Then SQL = SQL & "AND c!commune LIKE '*" & Me.txtcommunec & "*' " End If If Not Me.txtregionc = "" Then SQL = SQL & "AND c!region LIKE '*" & Me.txtregionc & "*' " End If If Not Me.txtdepc = "" Then SQL = SQL & "AND c!departement LIKE '*" & Me.txtdepc & "*' " End If If Not Me.txtpaysc = "" Then SQL = SQL & "AND c!pays LIKE '*" & Me.txtpaysc & "*' " End If SQL = SQL & ";" Me.lstResults.RowSource = SQL Me.lstResults.Requery End Sub
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Private Sub btnRechercher_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) RefreshQuery End Sub
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Private Sub lstResults_DblClick(Cancel As Integer) DoCmd.OpenForm "Formulaire_info_globale_specimens", acNormal, , num_inventaire = " & Me.lstResults End Sub
Désolé, je ne trouve pas comment faire pour rendre çà plus jolie
Si vous avez besoin d'autres choses ou trouvez une solution, merci de la faire partager
Bonne soirée!
Partager