Bonjour à vous
J'ai une erreur d’exécution quand j'ouvre mon formulaire de recherche.
Quand je clique sur débogage il me donne :Erreur d’exécutions '3021':
aucun enregistrement en cours
rst.MoveLast (ligne 56) est souligné en jaune.
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66 Option Compare Database Option Explicit Function OuvrirQuoi(MonFormulaire) ' Cette fonction est appelée quand on clique sur un bouton. ' intBtn indique quand on clique sur un bouton. ' Constantes pour les commandes ne pouvant être exécutées. Const conCmdGotoSwitchboard = 1 Const conCmdOpenFormAdd = 2 Const conCmdOpenFormBrowse = 3 Const conCmdOpenReport = 4 Const conCmdCustomizeSwitchboard = 5 Const conCmdExitApplication = 6 Const conCmdRunMacro = 7 Const conCmdRunCode = 8 ' Erreur de case. Const conErrDoCmdCancelled = 2501 Dim remarque, NomFormulaire Dim a As Long remarque = Forms(MonFormulaire)!ListeOption.Column(3) 'Argument NomFormulaire = Forms(MonFormulaire)!ListeOption.Column(2) Select Case Forms(MonFormulaire)!ListeOption.Column(1) Case "Form" Select Case Val(Forms(MonFormulaire)!ListeOption.Column(3)) ' Ouvre un formulaire en mode ajout. Case conCmdOpenFormAdd DoCmd.OpenForm Forms(MonFormulaire)!ListeOption.Column(2), , , , acAdd, , "A" ' Ouvre un formulaire en mode normal. Case conCmdOpenFormBrowse DoCmd.OpenForm Forms(MonFormulaire)!ListeOption.Column(2) End Select Forms(NomFormulaire).Tag = remarque Forms(NomFormulaire).Caption = Forms(MonFormulaire)!ListeOption.Column(0) Case "Report" DoCmd.OpenReport Forms(MonFormulaire)!ListeOption.Column(2), acPreview Case "Function" DoCmd.RunMacro Forms(MonFormulaire)!ListeOption.Column(2) End Select End Function Function RassembleDisciplinesParPersonnes(v_clefpersonne) As String Dim rst As Recordset Dim MonSQL As String Dim i Dim temp As String MonSQL = "SELECT SousDiscipline FROM SousDisciplines INNER JOIN T_Lien_DisciplinePersonne " MonSQL = MonSQL & "ON SousDisciplines.ClefSousDiscipline = T_Lien_DisciplinePersonne.ClefSousDiscipline WHERE (ClefPersonne=" & v_clefpersonne & ")" Set rst = CurrentDb.OpenRecordset(MonSQL) rst.MoveLast rst.MoveFirst For i = 0 To rst.RecordCount - 1 temp = temp & rst!SousDiscipline temp = temp & "," rst.MoveNext Next rst.Close If Right(temp, 1) = "," Then temp = Left(temp, Len(temp) - 1) RassembleDisciplinesParPersonnes = temp End Function
Comment régler mon problème ?
Bonne soirée.
Partager