Variable pour le nom d'un formulaire

Le
michael
Bonjour
J'ai des partie de codes communes à plusieurs formulaires, pour pas devoir
réécrire le même code, y a ti'l moyen de mettre les noms de formulaire dans
une variables?? j'ai essaier mais ca ne marche pas
Y a t'il un moyen d'y ariver quand même??
merci d'avance
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Christian Hugoud
Le #16446981
Je ne suis pas certain de bien comprendre...

Option 1 : tu passes le formulaire dans une variable déclarée as Form, et
dans le code tu la récupères (en fait tu récupères le formulaire).

Option 2 : tu passes le nom du formulaire (f.name je pense), et après tu
fais une boucle dans ta procédure pour récupérer le formulaire qui a le même
nom que celui que tu cherches, en interrogeant l'objet formS. C'est plus
lourd.

Christian

"michael" news:
Bonjour
J'ai des partie de codes communes à plusieurs formulaires, pour pas devoir
réécrire le même code, y a ti'l moyen de mettre les noms de formulaire
dans
une variables?? j'ai essaier mais ca ne marche pas...
Y a t'il un moyen d'y ariver quand même??
merci d'avance


michael
Le #16447261
merci pour la réponse rapide, mais j'ai pas tout saisi...lol
Un petit exemple simple pour mieux comprendre se que je veux faire:
deux formulaire, avec chacun un bouton de commande
premier formulaire:

Private Sub Command1_Click()
ChangeCaption
End Sub

Deuxième formulaire
Private Sub Command1_Click()
ChangeCaption
End Sub

Comme les deux font exactement la même chose, mettre en caption "nom de
formulaire" au deux formulaire, je me demandais si il y avais moyen de
condensé le code pour qu'il récupère quelquepart le formulaire 1 ou 2 en
fonction de l'utilisation:
dans le module:

Sub ChangeCaption()
Form1.Caption = "nom de formulaire"
Form2.Caption = "nom de formulaire"
End Sub

et je voudrais donc réduire à une seule commande (mon code est evidemment
beaucoup plus long que cette exemple), ou il reprendrais le numero du
formulaire, le 1 ou le 2.
Voilà si c'est un peu plus claire?
merci



"Christian Hugoud" wrote:

Je ne suis pas certain de bien comprendre...

Option 1 : tu passes le formulaire dans une variable déclarée as Form, et
dans le code tu la récupères (en fait tu récupères le formulaire).

Option 2 : tu passes le nom du formulaire (f.name je pense), et après tu
fais une boucle dans ta procédure pour récupérer le formulaire qui a le même
nom que celui que tu cherches, en interrogeant l'objet formS. C'est plus
lourd.

Christian

"michael" news:
> Bonjour
> J'ai des partie de codes communes à plusieurs formulaires, pour pas devoir
> réécrire le même code, y a ti'l moyen de mettre les noms de formulaire
> dans
> une variables?? j'ai essaier mais ca ne marche pas...
> Y a t'il un moyen d'y ariver quand même??
> merci d'avance





LE TROLL
Le #16447411
Bonjour,

Alors, ta partie de code tu peux l'appeler quand même

'form1
Public variable as string
sub codeCommun()
variable = "bonjour"
end sub

'form2
call form1.codeCommun
msgbox form1.variable ' = bonjour
--------------------------

Pour les variables, tu peux utiliser des variables de type public (non
indicées), soit:

'form1
public maVariable as string

'form2
form1.maVariable = x

---------------------------

En suite tu peux par exemple piloter tes feuilles par la variable public,
exemple:
'form1
Public feuillesOuvertes as string
load form2
feuillesOuvertes = "2"
form2.show

'form2
if form1.feuillesOuvertes = "2" then ...


--
Romans, logiciels, email, site personnel
http://irolog.free.fr/joe.htm
------------------------------------------------------------------------------------
"michael" news:
| Bonjour
| J'ai des partie de codes communes à plusieurs formulaires, pour pas devoir
| réécrire le même code, y a ti'l moyen de mettre les noms de formulaire
dans
| une variables?? j'ai essaier mais ca ne marche pas...
| Y a t'il un moyen d'y ariver quand même??
| merci d'avance
Jacques93
Le #16447671
Bonjour michael,
michael a écrit :
merci pour la réponse rapide, mais j'ai pas tout saisi...lol
Un petit exemple simple pour mieux comprendre se que je veux faire:
deux formulaire, avec chacun un bouton de commande
premier formulaire:

Private Sub Command1_Click()
ChangeCaption



ChangeCaption Me, "Nom1" ' Passage de l'objet
formulaire en paramètre

End Sub

Deuxième formulaire
Private Sub Command1_Click()
ChangeCaption



ChangeCaption Me, "Nom2" ' Passage de l'objet
formulaire en paramètre

End Sub

Comme les deux font exactement la même chose, mettre en caption "nom de
formulaire" au deux formulaire, je me demandais si il y avais moyen de
condensé le code pour qu'il récupère quelquepart le formulaire 1 ou 2 en
fonction de l'utilisation:
dans le module:

Sub ChangeCaption()
Form1.Caption = "nom de formulaire"
Form2.Caption = "nom de formulaire"
End Sub




Sub ChangeCaption (frm As Form, s As String)
frm.Caption = s
End Sub

et je voudrais donc réduire à une seule commande (mon code est evidemment
beaucoup plus long que cette exemple), ou il reprendrais le numero du
formulaire, le 1 ou le 2.
Voilà si c'est un peu plus claire?
merci




--

Cordialement,

Jacques.
Christian Hugoud
Le #16450921
Pas mieux

"Jacques93" a écrit dans le message de news:
%
Bonjour michael,
michael a écrit :
merci pour la réponse rapide, mais j'ai pas tout saisi...lol
Un petit exemple simple pour mieux comprendre se que je veux faire:
deux formulaire, avec chacun un bouton de commande
premier formulaire:

Private Sub Command1_Click()
ChangeCaption



ChangeCaption Me, "Nom1" ' Passage de l'objet
formulaire en paramètre

End Sub

Deuxième formulaire
Private Sub Command1_Click()
ChangeCaption



ChangeCaption Me, "Nom2" ' Passage de l'objet
formulaire en paramètre

End Sub

Comme les deux font exactement la même chose, mettre en caption "nom de
formulaire" au deux formulaire, je me demandais si il y avais moyen de
condensé le code pour qu'il récupère quelquepart le formulaire 1 ou 2 en
fonction de l'utilisation:
dans le module:

Sub ChangeCaption()
Form1.Caption = "nom de formulaire"
Form2.Caption = "nom de formulaire"
End Sub




Sub ChangeCaption (frm As Form, s As String)
frm.Caption = s
End Sub

et je voudrais donc réduire à une seule commande (mon code est evidemment
beaucoup plus long que cette exemple), ou il reprendrais le numero du
formulaire, le 1 ou le 2.
Voilà si c'est un peu plus claire?
merci




--

Cordialement,

Jacques.


Jacques93
Le #16451071
Bonjour Christian Hugoud,
Christian Hugoud a écrit :
Pas mieux




C'est assez proche de l'option 1 que tu proposes ;-)

--

Cordialement,

Jacques.
Christian Hugoud
Le #16451411
C'est exactement cela

"Jacques93" a écrit dans le message de news:
%23j1b$
Bonjour Christian Hugoud,
Christian Hugoud a écrit :
Pas mieux




C'est assez proche de l'option 1 que tu proposes ;-)

--

Cordialement,

Jacques.


michael
Le #16494131
Merci mais finalement il y a quand même pas mal de différence j'ai du refaire
un code à part...
merci à tous

"LE TROLL" wrote:

Bonjour,

Alors, ta partie de code tu peux l'appeler quand même

'form1
Public variable as string
sub codeCommun()
variable = "bonjour"
end sub

'form2
call form1.codeCommun
msgbox form1.variable ' = bonjour
--------------------------

Pour les variables, tu peux utiliser des variables de type public (non
indicées), soit:

'form1
public maVariable as string

'form2
form1.maVariable = x

---------------------------

En suite tu peux par exemple piloter tes feuilles par la variable public,
exemple:
'form1
Public feuillesOuvertes as string
load form2
feuillesOuvertes = "2"
form2.show

'form2
if form1.feuillesOuvertes = "2" then ...


--
Romans, logiciels, email, site personnel
http://irolog.free.fr/joe.htm
------------------------------------------------------------------------------------
"michael" news:
| Bonjour
| J'ai des partie de codes communes à plusieurs formulaires, pour pas devoir
| réécrire le même code, y a ti'l moyen de mettre les noms de formulaire
dans
| une variables?? j'ai essaier mais ca ne marche pas...
| Y a t'il un moyen d'y ariver quand même??
| merci d'avance





Publicité
Poster une réponse
Anonyme