Saut tout le monde,
En fait j'ai rencontré un erreur :
Erreur d'exécution "91" :
Variable objet ou variable de bloc non définie,
Je veux faire un sélection d'un enregistrement d'une table Affaire selon un Num_Affaire choisi à partir d'une liste déroulante qui affiche tous les Num_Affaire disponible, tous sa pour Modifier avec Update !
dans un module nommé ModuleConnexion j'ai utilisé sa :
j'ai écrit le code pour l'ajout dans tous les tables sa tourne bien avec cette méthode !
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 Option Compare Database Public Com As String 'Variable qui va contenir les commandes SQL de type INSERT, UPDATE... Public affaire As DAO.Database 'La variable qui va faire le lien entre l'application et la base de données, pour pouvoir exécuter les commandes SQL Public dataset As DAO.Recordset 'Variable qui va contenir les données d'une resultat sql temporairememnt dans la RAM Function Connect() Set affaire = CurrentDb 'Initialiser la variable affaire à la base de données courante End Function Function valider_selection() Set dataset = affaire.OpenRecordset(Com, dbOpenDynaset) 'Initialise dataset exécute la dernière commande SQL par le biais de la variable de commande et remplit l'ensemble de données dans la mémoire End Function
Dans un formulaire nommé frmModification j'ai une bouton pour rechercher l'affaire à modifier, la partie qui nous intéresse :
Alors il affiche l'erreur 91 comme cité ci-dessus, et lors du débogage ce ligne du ModuleConnexion :
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 Private Sub b_rech_aff_Click() Dim numaff As String 'Vérifier que l'utilisateur a bien choisi un numéro If IsNull(ld_numaff_mod.Value) Or IsEmpty(ld_numaff_mod.Value) Then MsgBox "Vous devez choisir un numéro d'affaire !" Else: numaff = ld_numaff_mod.Value Com = "SELECT * FROM Affaire WHERE Num_Affaire=" & numaff 'J'ai essayer avec les crochets, toujours pas de résultat valider_selection Form_frmModCons2.zt_statut = dataset("Statut") 'Statut est un champ dans la table affaire, je veux affecter la valeur récupérer de la requête SELECT à un champ d'un Formulaire nommé frmModCons2 préalablement MsgBox "Trés bien !!" 'juste en mode Test lol :p DoCmd.Close acForm, "Modification" DoCmd.OpenForm "frmModCons1" End If End Sub
devient jaune !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Set dataset = affaire.OpenRecordset(Com, dbOpenDynaset)
Merci bien les amis de vouloir m'aider à sortir de cette problème.
Partager