Déclaration d'une variable utilisée dans pls USF

porcinet82

XLDnaute Barbatruc
Bonjour a tous,

Malgré que je ne sois plus tres present sur le forum ces derniers temps, cela ne m'empeche pas de passer quotidiennement voir les nouvelles.

J'en viens a present a ma question. Je suis sur access en ce moment, mais le principe est le meme sous excel.
Donc, je taf sur un premier USF, dont je recupere le nom dans une variable (nom_USF1=USF1.Name)

Or, je n'arrive pas a declarer cette variable de telle facon que je puisse m'en servir dans un second USF. Je precise que je recupere le nom du USF dans une instruction Load.

J'ai bien esasyer l'instruction public ou static mais apparement, aujourd'hui, j'ai un QI de bulot...

Merci aux ames charitables qui pourront m'aider sur ce coup ci.

@+
 
Dernière édition:

wilfried_42

XLDnaute Barbatruc
Re : Déclaration d'une variable utilisée dans pls USF

bonjour porcinet

tu peux essayer usf2.textbox1 = usf1.name : tout en etant dans le code USF1

personnelement, via module, je remplis mes USF de parametres avant de la charger en memoire (.show) et ca marche
 

chewi

XLDnaute Junior
Re : Déclaration d'une variable utilisée dans pls USF

Bonjour Porcinet,

Je pense ne faire que te répéter mais aller, je propose...

As-tu fait ta déclaration public en tête d'un module classique et non pas dans le module du UserForm?
Public nom_USF1 As String dans un module indépendant.

Sinon tu peux toujours te servir de l'espion pour voir quand ta variable prend une valeur et éventuellement quand elle la perd.

Bien à toi,

Chewi

Edit: je crois de nouveau avoir été devancé. :)
 

porcinet82

XLDnaute Barbatruc
Re : Déclaration d'une variable utilisée dans pls USF

Bonjour a vous trois,

Je vous remercie, effeectivement, avec le Public mis dans un module et non dans le code du USF :rolleyes: , ca fonctionne beaucoup mieux.

Cependant, j'ai encore un petit soucis et je pense que la encore l'un d'entre vous va pouvoir m'aider.

Donc je recupere bien le nom de mon formlaire et je demande a access de l'ouvrir avec la commande suivante (qui fonctionne ; Nom_formulaire est la variable contenant le nom du formulaire ouvert précedemment):
DoCmd.OpenForm FormName:=Nom_formulaire

Par contre, ensuite, j'utilise l'instruction Set, cependant, je ne la maitrise pas tres bien et je ne sais pas trop comment l'utiliser. Lorsque je mettais
Set frmcon = Forms.USF1
pas de soucis.
Par contre j'ai voulu mettre Set frmcon = Forms.Nom_formulaire et ca ne fonctionne plus.

Si vous avez une solution je suis preneur.

@+

PS : je sais bien que c'est un forum excel et non access, mais il me semble que la, vous pouvez m'aider. Et pour Pascal, si tu penses que ce post n'a rien a faire la, tu me fait signe et j'edite, ou je te laisse faire ton travail
 

wilfried_42

XLDnaute Barbatruc
Re : Déclaration d'une variable utilisée dans pls USF

re: bonjour à tous

je viens de trouver peut etre une astuce dans l'aide excel

UserForms(index)
L'espace réservé index représente un entier compris entre 0 et UserForms.Count – 1. La propriété Item est le membre par défaut de la collection UserForms ; il n'est donc pas nécessaire de la spécifier.

Remarques

Vous pouvez utiliser la collection UserForms pour parcourir toutes les feuilles utilisateur chargées d'une application. Elle permet d'identifier une variable globale intrinsèque appelée UserForms. Vous pouvez passer UserForms(index) à une fonction dont l'argument est indiqué en tant que classe UserForm.

au lieu de le gérer par son nom, pourquoi pas pas son index
 

PascalXLD

XLDnaute Barbatruc
Modérateur
Re : Déclaration d'une variable utilisée dans pls USF

Re

Pour moi pas de problème Romain mais il faudra que tu attendes peut-être un peu plus que des utilisateurs d'access passent. Perso il y a 6 ans que je n'y ais plus touché alors .....

Bonne journée
 

chewi

XLDnaute Junior
Re : Déclaration d'une variable utilisée dans pls USF

Re,

Je suis loin de maîtriser également mais je pense que l'instruction "Set" n'est valable que pour des objets comme ton "Forms.USF1" et non plus pour des noms "Forms.Nom_formulaire".

mavariable = Userform1.name
Set mavariable = Userform1

Essaie peut-être la même instruction mais sans le "set" sauf si ton but est de garder ton objet dans la variable frmcon.
 

Pierrot93

XLDnaute Barbatruc
Re : Déclaration d'une variable utilisée dans pls USF

Bonjour Romain, Pascal, Chewi, Wilfried

j'aurais peut être tenté comme ci dessous :

Code:
Set frmcon = Forms("Nom_formulaire")

mais bon... a voir..

bon après midi à tous
@+
 

Statistiques des forums

Discussions
312 322
Messages
2 087 275
Membres
103 504
dernier inscrit
Marie28