Feuilles,controles et subs

Résolu
Profil bloqué - 20 sept. 2007 à 23:58
 Profil bloqué - 22 sept. 2007 à 10:51
Bonjour à tous
Le sujet est assez difficile à préciser en quelques mots mais voici le problème:
J'ai par exemple 2 feuilles Form1 et Form2 : sur chaque feuille un controle Text1 et une Sub Affichtext()
Cette Sub permet d'afficher le contenu d'un secteur de disque dans la Textbox.
La Sub est identique sur Form1 et Form2 et le controle Text1 est identique sur chaque feuille
La question est : Comment inséerer cette Sub dans un module afin que la Sub Affichtext agisse sur le controle Text1 de la feuille d'où cette Sub a été appelée ? où plus simplement comment avoir une seule Sub dans un module au lieu de 2 Subs identiques dans 2 feuilles différentes ?

Merci à tous pour votre aide et vos idées car ceci racourcirait grandement le code de mon projet
En attendant de vous lire bonne prog à tous et A+

GRENIER Alain[8D]

3 réponses

Profil bloqué
21 sept. 2007 à 00:35
Ne cherchez plus : j'ai trouvé

La sub doit être appelée avec le paramètre Me ( qui indique la feuille en cours) : Affichtext Me
La sub elle même doit être définie ainsi : Public Sub Affichtext (Feuille  as Form)
Puis ensuite la sub elle-même
      With Feuille
              .Text1.text = ""    (il y a un point devant le nom du controle Text1)
              .Text1.Refresh
              etc........

      End With. 
End Sub

Merci quant même et desolé pour le dérangement
A+ et bonsoir

GRENIER Alain[8D]
3
Profil bloqué
22 sept. 2007 à 10:51
Tout à fait d'accord Jrivet
Dans ma demande je n'avais mis qu'un seule controle Text mais dans l'exemple de l'affichage d'un secteur de disque dur ils sont 3 : un text pour l'offset,un text pour les octets en héxadécimal et un pour les octets en ASCII
En tout merci bien pour l'info et A+

GRENIER Alain
3
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
21 sept. 2007 à 08:06
Salut,
Et si Affichtext n'agit que sur le TextBox, passe le TextBox en Parametre plutot que le formulaire.

Public Sub Affichtext(ByRef Txt As TextBox)
     With Txt
       .Text = vbNullString
       Call .Refresh
     End With
End Sub , ----
[code.aspx?ID=41455 By Renfield]

Ensuite il te suffit de changer le parametre d'appel.
@+: Ju£i?n
Pensez: Réponse acceptée
0
Rejoignez-nous