|
Trouver une ressource
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
Sujet : Procédure dans un module puis l'appeler [ Langages dérivés / VBA ] (4rocky4)
Informations & options pour cette discussion
mercredi 20 février 2008 à 11:01:29 |
Procédure dans un module puis l'appeler

4rocky4
|
Bonjour,
J'ai plusieurs procédure sur plusieurs formulaires Access qui sont les mêmes. Et je voudrais mettre la procédure dans un module et l'appeler à chaque fois que j'en ai besoin.
Voilà la procédure d'un formulaire que je veux mettre dans un module :
Private Sub ld_nom_AfterUpdate() Dim rs As Object Set rs = Me.Recordset.Clone rs.FindFirst "[code_contact] = " & Str(Nz(Me![ld_nom], 0)) Me.Détail.Visible = True If Not rs.EOF Then Me.Bookmark = rs.Bookmark End If End Sub
Code_contact est le champ d'une table et ld_nom une liste déroulante du formulaire. Ces deux là change à chaque fois que la procédure doit être appelée.
Comment dois-je écrire ma procédure dans mon module afin qu'elle puisse etre utilisé à chaque fois ? Comment dois-je l'appeler par la suite ?
Je vous remercie par avance.
4rocky4
|
|
|
mercredi 20 février 2008 à 11:37:29 |
Re : Procédure dans un module puis l'appeler

jrivet
|
Salut, Essaie de passer les deux parametre en String ATTENTION dans un module tu ne pourras pas utiliser ME Dim rs As Object Set rs = Me.Recordset.Clone rs.FindFirst "[code_contact] = " & Str(Nz(Me![ld_nom], 0)) Me.Détail.Visible = True If Not rs.EOF Then Me.Bookmark = rs.Bookmark End If | | By Renfield | @+: Ju£i€n Pensez: Réponse acceptée
|
|
|
mercredi 20 février 2008 à 11:44:41 |
Re : Procédure dans un module puis l'appeler

wassimez
|
Bonjour , en plus il faut que tu change Private Sub ld_nom_AfterUpdate() par Public Sub ld_nom_AfterUpdate()
|
|
|
mercredi 20 février 2008 à 11:49:26 |
Re : Procédure dans un module puis l'appeler

4rocky4
|
Re,
Alors dans mon module j'ai mis : --------------------------- Sub liste_recherche(frm As Form, champ AsString, liste AsString) ' Rechercher l'enregistrement correspondant au contrôle. Dim rs AsObject Set rs = frm.Recordset.Clone rs.FindFirst"[" & champ & "] = " & Str(Nz(frm![" & liste & "], 0)) 'on affiche la partie détail frm.Détail.Visible = True 'si le nom saisie n'existe pas IfNot rs.EOFThen frm.Bookmark = rs.Bookmark EndIf EndSub -------------------------- puis pour appeler la procédure je procède comme ça :
-------------------------- PrivateSub ld_recherche_AfterUpdate() Call liste_recherche(Me, code_contact, ld_nom) EndSub -------------------------
Mais lorsque je lance mon formulaire et que jeffectue l'action qui exécute ma procédure, j'obtiens ce message d'erreur :
erreur d'exécution '2465': impossible de trouver le champ "&liste&" auquel il fait référence dans votre expression.

|
|
|
mercredi 20 février 2008 à 14:47:18 |
Re : Procédure dans un module puis l'appeler

4rocky4
|
Comment faire pour régler ce problème ? 
|
|
|
jeudi 21 février 2008 à 00:03:09 |
Re : Procédure dans un module puis l'appeler

MPi
|
>> Code_contact est le champ d'une table et ld_nom une liste déroulante du formulaire.
Si ld_nom est une liste déroulante, tu ne peux pas la passer en paramètre As String. Tu dois soit la passer comme Object ou Listbox et changer ton code, ou soit passer le texte sélectionné et là tu dois changer l'appel Call liste_recherche(Me, code_contact, ld_nom.Text) Et pourquoi déclarer rs As Object plutôt que As Recordset ? Peut-être est-ce nécessaire pour cette méthode de clone...(?) Je trouve ça étrange tout de même...
MPi² Pour ceux qui programment sous Office, n'oubliez pas qu'il existe un forum dédié à ces applications VBA....... ICI
|
|
|
jeudi 21 février 2008 à 09:25:38 |
Re : Procédure dans un module puis l'appeler
|
jeudi 21 février 2008 à 10:31:16 |
Re : Procédure dans un module puis l'appeler

4rocky4
|
J'ai résolu mon problème. je vous remercie.
|
|
|
jeudi 21 février 2008 à 11:05:00 |
Re : Procédure dans un module puis l'appeler

MPi
|
Et comment as-tu résolu ? MPi² Pour ceux qui programment sous Office, n'oubliez pas qu'il existe un forum dédié à ces applications VBA....... ICI
|
|
|
jeudi 21 février 2008 à 14:01:11 |
Re : Procédure dans un module puis l'appeler

4rocky4
|
J'ai mis cette ligne à la place :
rs.FindFirst "[" & champ & "] = " & Str(Nz(frm(liste), 0))
et voilà ... :)
|
|
|
Cette discussion est classé dans : module, rs, procédure, appeler, ld
Répondre à ce message
Sujets en rapport avec ce message
APPELER PROCEDURE MODULE CLASSE [ par spike62300 ]
Bonjour, j'ai décidé de remettre de l'ordre dans mon programme. Pour cela je créé des modules de classe pour chaque famille de produit dont je dispos
Appel Sub dans autre macro [ par tonton33650 ]
Bonjour a tous,Question certainement basique. Je travaille en VBA sur une base de donnees Access et je cherche a appeler un module que j'ai declare en
Passage de (Me) [ par Gringoire2004 ]
Bonjour, j'aimerais savoir la synthaxe complète utilisée pour passer une Form entière à un processus situé dans un module.Le nom du Sub est Victoire a
Appeler une procédure VBscript à Partir de JavaScript [ par romantiques ]
Bonjour,Est il possible d'appeler une procédure VBScript à partir d'une procédure JavaScript.J'écris du code Html utilisant du JavaScript pour animer
Sub friend dans un module de classe [ par Polack77 ]
Bonjour, J'ai un petit problème avec une procédure dans un module de classe. N'arrive pas à la déclarer correctement<img src="/imgs2/sm
ACCESS VBA - Affecter le nom de la procédure en cours dans une variable [ par JM247L ]
Bonjour,Pour la mise en forme d'une gestion d'erreur dans une application Access, je souhaiterai pouvoir récupérer dans une variable le nom de la proc
Appeler une procédure située sur autre page [ par FBVLV ]
Bonjour,Sur une forme unique (Form1.vb), j'ai placé un TabControl (TabControl1) avec deux TabPage (TabPage1 et TabPage2) Je souhaite lancer une pro
Procédure commune [ par philippe ]
Voilà mon problème :J'ai plusieurs forms sur lesquels il y a des textbox et des combobox avec des index.Je voudrai créer une procédure dans un module
appel de procédure [ par PatLogan ]
Bonjour,Je n'arrive pas à appeler une procédure avec arguments si elle fait partie d'un autre classeur.Est-ce que c'est une histoire de module de clas
Appel d'une procédure d'affichage d'image dans un Module [ par Bouboutch ]
El BouboutchHello !!Voici mes problèmes :Number ONE :Dans une FORM_01, j'appelle la procédure AFFICHAGE_IMAGE définie dans le module MODULE. AFFICHAGE
Livres en rapport
|
Téléchargements
Logiciels à télécharger sur le même thème :
|