USERFORM VS USERFORM???

S

SYLVAIN

Guest
Salut a tous !!!!

J ai un petit probleme avec mon uf, je m'explique:

J'aimerai lorsqu'une cellule de mon UF1 est non saisie par l'utilisateur faire apparaitre lors de la validation un UF2 avec le nom de la cellule et un "TextBox1".

Jusque la pas de probleme:

If Userform1.TextBox6.Text = "" Then
Userform2.Show
Unload Userform1
end if

Mon probleme arrive!!!

Comment faire pour remplir automatiquement le userform1 lorsque je valide le UF2 avec un "CommandButton1"

et donc pouvoir continuer a remplir le UF1 si il y a d'autre oubli.
 
@

@+Thierry

Guest
Bonjour tout le monde,

Euuuuh Keata...... Vite fait, (boulot, boulot)
UF1.AddItem (???)

UF1.ListBox1.AddItem => OK
UF1.ComboBox1.AddItem => OK
Mais pas UF1.AddItem !!

De plus, il faut bien savoir que "AddItem" n'est applicable qu'aux deux Controls "ListBox" et ComboBox"
Quand à UF1.Clear il faudrait d'abord faire une collection de tous les controls du UserForm... car çà m'étonnerait très très fort que çà passe direct comme çà...

Pour Sylvain, il te faut un truc de ce genre dans ton CommandButton1 du UserForm2 (Dans le Private Module de ce UserForm2 Donc)

Private Sub CommandButton1_Click ()
Unload UserForm2
UserForm1.Show
UserForm1.textbox1.setfocus
End Sub

Si j'ai bien compris que tu voulait donc retourner sur la Siasie du TextBox lancé en Vide par le User distrait !!! (ahh là là ces Users tout de même !! lol)

Juste pour un soucis d'éviter tout un conglomérat de userforms juste pour ce genre de messages... (attention une grosse quantité de USF peut entrainer des lenteurs et des fichier énormes aussi) utilise plutot des msgbox... (il y a des exemples dans tous mes USF)

Bonne Journée
@+Thierry
 
S

SYLVAIN

Guest
je ne comprent pas!!

Private Sub CommandButton1_Click () 'ok
Unload UserForm2 'ok pour fermer la fenetre
UserForm1.Show 'bloque ici ??? cette fct est bien pour mettre le UF1?
UserForm1.textbox1.setfocus 'je n arrive pas jusqu'ici
End Sub

et juste pour info quel est le fonction de "setfocus" , je ne suis pas sur que c'est la bonne fonction.

et pour le renvoi de la saisie du uf2 dans une cellule du uf1?

Bon Aprem/
 
@

@+Thierry

Guest
Re Sylvain,

UserForm1.Show

est l'instruction basic pour ouvrir le "UserForm1" (tel que VBA a dû donner un nom au premier UserForm que tu as créé)... Maintenant si ton UserForm s'appelle "Toto" il faudra écrire...

Toto.Show

Je pense que ton problème vient de là...
(Quand on débute, je conseille de laisser les Objets tel VBA les a nommé, par contre si on veut vraiment personnaliser on peut nommer par exemple UserForm1Home, UserForm2Main, UserForm3ErrorMsg1, UserForm3ErrorMsg2 etc etc, l'avantage c'est que tes UserForms seront listés dans un ordre logique d'apparition dans l'Explorateur de Projets dans VBE)...


Pour le reste, "SetFocus" signifie que la TextBox1 aura le Focus (curseur actif) vu que cette TextBox1 a été validée vide par le User distrait, puisque tu veux que celà soit le renvoie du message d'erreur du UserForm2, donc on dirige le User exactement là ou il à fait l'oubli...

Voilà
bon aprèm
@+Thierry
 

Discussions similaires

Statistiques des forums

Discussions
314 651
Messages
2 111 553
Membres
111 199
dernier inscrit
mavoungou regis