Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel > Macros et VBA Excel
Macros et VBA Excel Vos questions relatives aux macros Excel, à l'utilisation de VBA et à l'automatisation de vos classeurs Excel.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 31/01/2012, 12h35   #1
Invité régulier
 
Homme
Administrateur systèmes et réseaux
Inscription : septembre 2011
Messages : 21
Détails du profil
Informations personnelles :
Sexe : Homme

Informations professionnelles :
Activité : Administrateur systèmes et réseaux
Secteur : Finance

Informations forums :
Inscription : septembre 2011
Messages : 21
Points : 9
Points : 9
Par défaut Formulaire d Initialisation avec argument

Bonjour,

Je désire faire passer un argument dans la procédure d'initialisation d un formulaire. (userform1.show)
la définition d'une variable publique dans le programme ne donne aucun résultat. le contenu de la variable est toujours vide dans la procédure .
quelqu'un aurait-il une idée pour ce faire ?
Merci.
khame1 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/01/2012, 12h54   #2
Membre Expert
 
Homme
Inscription : décembre 2011
Messages : 566
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : décembre 2011
Messages : 566
Points : 1 081
Points : 1 081
Bonjour,

Citation:
Je désire faire passer un argument dans la procédure d'initialisation d un formulaire. (userform1.show)
S'il s'agit d'un UserForm, ajouter une méthode Initialisation(<paramètres>) à la userform.
Puis appeler cette méthode avant le userform1.Show()
BlueMonkey est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/01/2012, 13h09   #3
Expert Confirmé
 
Philippe Tulliez
Développeur et formateur VBA, Excel et Word.
Inscription : janvier 2010
Messages : 1 313
Détails du profil
Informations personnelles :
Nom : Philippe Tulliez
Localisation : Belgique

Informations professionnelles :
Activité : Développeur et formateur VBA, Excel et Word.

Informations forums :
Inscription : janvier 2010
Messages : 1 313
Points : 2 679
Points : 2 679
Bonjour,
Je n'ai sans doute pas compris ta question parce-que pour moi, une variable définie comme Public garde sa valeur également dans un UserForm.
__________________
Philippe Tulliez
http://philippe.tulliez.be
Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)

Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
corona est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/01/2012, 13h34   #4
Invité régulier
 
Homme
Administrateur systèmes et réseaux
Inscription : septembre 2011
Messages : 21
Détails du profil
Informations personnelles :
Sexe : Homme

Informations professionnelles :
Activité : Administrateur systèmes et réseaux
Secteur : Finance

Informations forums :
Inscription : septembre 2011
Messages : 21
Points : 9
Points : 9
bonjour,

j'ai déclaré une variable publique dans le coding de mon programme (public dim titre as integer)
titre = 1
userform1.show pointe vers la procédure userform1_Initialize
le trace (debug.print titre), dans cette procédure, donne zéro alors que cette variable était initialisée à 1 (voir ci-dessus)
khame1 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/01/2012, 13h51   #5
Expert Confirmé
 
Philippe Tulliez
Développeur et formateur VBA, Excel et Word.
Inscription : janvier 2010
Messages : 1 313
Détails du profil
Informations personnelles :
Nom : Philippe Tulliez
Localisation : Belgique

Informations professionnelles :
Activité : Développeur et formateur VBA, Excel et Word.

Informations forums :
Inscription : janvier 2010
Messages : 1 313
Points : 2 679
Points : 2 679
Bonjour,
Alors, bien que j'étais certain de ce que j'avançais. J'ai fais un test et je confirme Test contient bien 1
Dans Module1
Code :
1
2
3
4
5
6
Option Explicit
Public titre As Integer
Sub Main()
 titre = 1
 UserForm1.Show
End Sub
Dans UserForm1
Code :
1
2
3
4
Option Explicit
Private Sub UserForm_Initialize()
 Me.TextBox1 = titre
End Sub
Ajout (Edit) : Petite précision
Si évidemment, tu as placé UserForm1.Show depuis le module ThisWorkbook alors tu auras la variable test à 0
Pour ma part, je démarre toujours mes applications dans une procédure Main que je place dans un module principal que je nomme MainXXXX
Donc, code dans ThisWorkBook
Code :
1
2
3
4
Option Explicit
Private Sub Workbook_Open()
 Main
End Sub
__________________
Philippe Tulliez
http://philippe.tulliez.be
Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)

Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
corona est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/01/2012, 14h42   #6
Invité régulier
 
Homme
Administrateur systèmes et réseaux
Inscription : septembre 2011
Messages : 21
Détails du profil
Informations personnelles :
Sexe : Homme

Informations professionnelles :
Activité : Administrateur systèmes et réseaux
Secteur : Finance

Informations forums :
Inscription : septembre 2011
Messages : 21
Points : 9
Points : 9
Merci pour cette réponse qui situe mon problème !
khame1 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 07h17.


 
 
 
 
Partenaires

Hébergement Web