OVH Cloud OVH Cloud

Prob. avec Me

7 réponses
Avatar
JCM
Bonjour

J'ai développé du code dans un module.base me permettant de créer un menu
dynamique dans différentes form (de nom différents)

dans ce module plutot d'écrire :
Load FrmETUDES.MnuEtudIndex(LenrAff)

j'ai écris :
Load Me.MnuEtudIndex(LenrAff)

Et cela beug, pouvez-vous me donner le bon code

Merci pour vos réponses
Cordialement
JCM

7 réponses

Avatar
ng
Salut,

Un module n'est pas un objet, Me ne peut donc fonctionner. Dasn votre code
la le Me fait reférence à la form mais seulement si le code est ds la form,
dans le module il faut faire : Load FrmETUDES.MnuEtudIndex(LenrAff)

--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/

JCM wrote:
Bonjour

J'ai développé du code dans un module.base me permettant de créer un
menu dynamique dans différentes form (de nom différents)

dans ce module plutot d'écrire :
Load FrmETUDES.MnuEtudIndex(LenrAff)

j'ai écris :
Load Me.MnuEtudIndex(LenrAff)

Et cela beug, pouvez-vous me donner le bon code

Merci pour vos réponses
Cordialement
JCM


Avatar
JCM
Bonjour

merci pour votre réponse, c'est ce que j'ai fait

mais je voudrais utiliser cette fonction dans plusieurs form et si j'écris
LaForm="FrmETUDES" et ensuite :
Load & laform & ".MnuEtudIndex(LenrAff)"

Cela Beug, comment faire ?

Merci pour votre réponse
Cordialement
JCM

"ng" a écrit dans le message de
news:%
Salut,

Un module n'est pas un objet, Me ne peut donc fonctionner. Dasn votre code
la le Me fait reférence à la form mais seulement si le code est ds la


form,
dans le module il faut faire : Load FrmETUDES.MnuEtudIndex(LenrAff)

--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/

JCM wrote:
> Bonjour
>
> J'ai développé du code dans un module.base me permettant de créer un
> menu dynamique dans différentes form (de nom différents)
>
> dans ce module plutot d'écrire :
> Load FrmETUDES.MnuEtudIndex(LenrAff)
>
> j'ai écris :
> Load Me.MnuEtudIndex(LenrAff)
>
> Et cela beug, pouvez-vous me donner le bon code
>
> Merci pour vos réponses
> Cordialement
> JCM




Avatar
Zoury
Salut Jean-Claude! :O)

Je doute d'avoir bien compris le sens de ta question..


Qu'essais-tu de faire avec cette ligne ?
'***
Load FrmETUDES.MnuEtudIndex(LenrAff)
'***

Qu'est-ce que MnuEtudIndex ? un menu indexé ou c'est la fonction qui créer
le menu dans le formulaire ?


--
Cordialement
Yanick Lefebvre
MVP pour Visual Basic
"JCM" a écrit dans le message de
news:
Bonjour

J'ai développé du code dans un module.base me permettant de créer un menu
dynamique dans différentes form (de nom différents)

dans ce module plutot d'écrire :
Load FrmETUDES.MnuEtudIndex(LenrAff)

j'ai écris :
Load Me.MnuEtudIndex(LenrAff)

Et cela beug, pouvez-vous me donner le bon code

Merci pour vos réponses
Cordialement
JCM


Avatar
JCM
Salut Zoury

MnuEtudIndex c'est une fonction qui créé le menu dans la form FrmETUDES

En fait j'ai créé un fonction dans un module pour pouvoir créer le
mnuEtudIndex sur différentes Form, voici mon code :

Dans un module FonctionsMenu.bas

Public Function updateMenuAffaire(MAJ As String) As String
'Construction du menu dynamique Affaire
LenrAff = 0
Do Until ADOrst.EOF
LenrAff = LenrAff + 1
On Error Resume Next 'permet de charger un élément sur le précédent
Load FrmETUDES.MnuEtudIndex(LenrAff) 'charge le nouvel élément
'Me.Load MnuEtudIndex(LenrAff) 'charge le nouvel élément

FrmETUDES.MnuEtudIndex(LenrAff).Visible = True 'assure la visibilité
LAFF = ADOrst("Num") & " (" & ADOrst("Enseigne") & " " & ADOrst("Affaire") &
")" 'récupère le texte
FrmETUDES.MnuEtudIndex(LenrAff).Caption = LAFF 'affecte le texte à l'Item du
menu
ADOrst.MoveNext
Loop
End Function

et dans le load de ma form frmEtudes:

Call updateMenuAffaire(MAJ)

cette fonction je voudrais l'utiliser pour d'autres form ce qui m'évitera
d'écrire X fois le meme code

Cordialement
JCM



"Zoury" a écrit :

Salut Jean-Claude! :O)

Je doute d'avoir bien compris le sens de ta question..


Qu'essais-tu de faire avec cette ligne ?
'***
Load FrmETUDES.MnuEtudIndex(LenrAff)
'***

Qu'est-ce que MnuEtudIndex ? un menu indexé ou c'est la fonction qui créer
le menu dans le formulaire ?


--
Cordialement
Yanick Lefebvre
MVP pour Visual Basic
"JCM" a écrit dans le message de
news:
> Bonjour
>
> J'ai développé du code dans un module.base me permettant de créer un menu
> dynamique dans différentes form (de nom différents)
>
> dans ce module plutot d'écrire :
> Load FrmETUDES.MnuEtudIndex(LenrAff)
>
> j'ai écris :
> Load Me.MnuEtudIndex(LenrAff)
>
> Et cela beug, pouvez-vous me donner le bon code
>
> Merci pour vos réponses
> Cordialement
> JCM





Avatar
Zoury
ok c'est plus clair.

essai de modifier ta signature comme ceci :
Public Function updateMenuAffaire(MAJ As String, frm As Form) As String



et modifie le reste du code pour employé la variable frm au lieu d'un
formulaire précis :
Load frm.MnuEtudIndex(LenrAff) 'charge le nouvel élément





tu dois t'assurer que le menu MnuEtudIndex existe bien sur les formulaires
appelé par la fonction...


tu appelles la méthode comme ceci :
'***
Call updateMenuAffaire(MAJ, FrmETUDES)
'***

--
Cordialement
Yanick Lefebvre
MVP pour Visual Basic
Avatar
JCM
Re Salut Zoury

Merci pour ton aide. Tout est OK

Dis moi tu ne m'a pas répondu sur mon denier Mail concernant l'ouverture du
table Dbase

Cordialement
JCM
"Zoury" a écrit dans le message de
news:%
Salut Jean-Claude! :O)

Je doute d'avoir bien compris le sens de ta question..


Qu'essais-tu de faire avec cette ligne ?
'***
Load FrmETUDES.MnuEtudIndex(LenrAff)
'***

Qu'est-ce que MnuEtudIndex ? un menu indexé ou c'est la fonction qui créer
le menu dans le formulaire ?


--
Cordialement
Yanick Lefebvre
MVP pour Visual Basic
"JCM" a écrit dans le message de
news:
> Bonjour
>
> J'ai développé du code dans un module.base me permettant de créer un


menu
> dynamique dans différentes form (de nom différents)
>
> dans ce module plutot d'écrire :
> Load FrmETUDES.MnuEtudIndex(LenrAff)
>
> j'ai écris :
> Load Me.MnuEtudIndex(LenrAff)
>
> Et cela beug, pouvez-vous me donner le bon code
>
> Merci pour vos réponses
> Cordialement
> JCM




Avatar
Zoury
> Dis moi tu ne m'a pas répondu sur mon denier Mail concernant l'ouverture


du
table Dbase



oui désolé j'ai complètement oublié de te répondre.... je n'ai
malheureusement rien trouvé d'utile.


--
Cordialement
Yanick Lefebvre
MVP pour Visual Basic