Probléme selection avec Recordset
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 :
Code:
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 |
j'ai écrit le code pour l'ajout dans tous les tables sa tourne bien avec cette méthode !
Dans un formulaire nommé frmModification j'ai une bouton pour rechercher l'affaire à modifier, la partie qui nous intéresse :
Code:
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 |
Alors il affiche l'erreur 91 comme cité ci-dessus, et lors du débogage ce ligne du ModuleConnexion :
Code:
1 2
|
Set dataset = affaire.OpenRecordset(Com, dbOpenDynaset) |
devient jaune !
Merci bien les amis de vouloir m'aider à sortir de cette problème.