!!! Re PB avec UserForm !!!

F

fabrice

Guest
Salut tout le monde

Je voulais savoir si c'était possible de mettre des "conditions" dans un Userform???

En fait, j'ai mis une boite de dialogue dans mon UF.
Ce que je souhaite c'est comparrer ce qui est entré par rapport a ce que j'avais definit.
Par exemple, si l'utilisateur tape le mot fab dans la boite de dialogue, alors on lance un autre UF, sinon, on reste sur le meme UF.

Merci de votre réponse

FAb
 
@

@+Thierry

Guest
Coucou vous deux !!

çà va bien ?
Alors Fab toujours dans les UserForms !! Heureusement que j'ai mon fidèle élève/assistant !! lol

Tu te débrouilles comme un Chef StepLof ! Ton code est très bien, on peut juste lui rajouter deux/trois petites choses :

Option Explicit
Option Compare Text 'évite le soucis de Case Sensitive

Private Sub CommandButton1_Click()
Dim TOTO As String
TOTO = TextBox1 'On déclare la valeur de la TextBox en Variable... Comme çà on peut s'amuser avec !!!

If TOTO = "Toto" Then
MsgBox "on pourrait aussi masquer l'userform1 et lancer userform2", vbInformation, "Vous avez bien Tapé " & TOTO
Unload UserForm1
UserForm2.Show
Exit Sub
Else
MsgBox "il faut taper Toto" & "Vous avez tapé : " & TOTO, vbCritical, "PAS BON FAUT TAPER TOTO"
TextBox1 = "" 'on vide le text faux
TextBox1.SetFocus 'on revient sur la textbox pour que le User saisisse juste!
End If
End Sub


Sinon c'est une belle histoire de Toto !!!

BOn Fin d'Aprèm !!!
@+Thierry
 
S

steplof

Guest
Salut,

merci pour le compliment (mais ce n'était qu'un problème de base..) pour ce classeur que j'ai fait à la va-vite.

Je commence à me débrouiller à peu près avec les techniques de base des userform à force de décortiquer tout ce que tu produis( et le choix est XXXXXXXXXXXXXXXXXXXXXXXL

Merci aussi (et surtout) pour ta correction qui permet de voir plein de petits détails de maniement d'userform auxquels je ne pense pas encore, mais ça viendra bien un jour... ,o)


Bonne fin de dimanche

Steplof
 
F

fabrice

Guest
Resalut

J'ai une petite question voir 2 à vous poser!!!

Comment renvoyer un text dans une textbox à la ligne:
MsgBox "il faut taper Toto" & "Vous avez tapé : " & TOTO, vbCritical, "PAS BON FAUT TAPER TOTO"

Ex possible:
MsgBox "il faut taper Toto"
"Vous avez tapé : " & TOTO, vbCritical, "PAS BON FAUT TAPER TOTO"

Par ailleurs, j'ai allié un bouton a mon UF. Je lance la premiere fois mon UF, je tape le mot "Toto" puis je clique sur OK. Tout se passe bien.
Le probleme vient quand je relance mon UF. Le mot a tapé est toujours inscrit dans la text Box. Génant, surtout si ce dernier doit servir de restriction d'utilisation !!!
Quelle est la commande a taper pour vider la textbox a la fin de l'UF???

Merci de votre réponse et en espérant avoir était claire (comme d'habitude)
FAb
 
@

@+Thierry

Guest
Re Fab

Q 1 =

Sub test()

TOTO = "TOTO"

MsgBox "il faut taper Toto, Mais vous avez tapé : " _
& TOTO, vbCritical, "PAS BON FAUT TAPER TOTO"

'Ou encore

MsgBox "il faut taper Toto," _
& "Mais Vous avez tapé : " & TOTO, vbCritical, _
"PAS BON FAUT TAPER TOTO"

'Ou encore
MsgBox "il faut " & _
"taper TOTO, """ _
& "Mais Vous " _
& "avez tapé : " & TOTO, vbCritical, _
"PAS BON FAUT TAPER TOTO"

'Ou encore !!!!!!!!!
MsgBox "i" _
& "l" _
& " f" _
& "a" _
& "u" _
& "t " _
& "t" _
& "a" _
& "p" _
& "e" _
& "r " _
& "T" _
& "O" _
& "T" _
& "O " _
& "M" _
& "a" _
& "i" _
& "s " _
& "V" _
& "o" _
& "u" _
& "s " _
& "avez tapé : " & TOTO, vbCritical, _
"PAS BON FAUT TAPER TOTO"
'NB Attention c'est la limite du retour de Ligne !

End Sub


Q 2 =
Tu quittes ton USF avec un CommandButton est lié a un code :
UserForm1.Hide

C'est à cause de ça.....
si tu veux réinitialiser le UserForm c'est
Unload UserForm1

Là ta TextBox1 sera remise à Zéro, enfin plutot à ""

D'ailleurs j'ai aussi donné pkus heut le moyen de la mettre à "" en cas d'erreur....

Voilà Bon UserForm Adventure Fab !!!

@+Thierry

PS oui oui je ne sais pas en Userform, mais en explications plus claires.... Oui tu fais des progrès ! :)
 
F

fabrice

Guest
merci chef

En fait pour la question 1, j'avais repris une de tes lignes de comande mais il y avait une virgule:

Depart = InputBox("Entrez la cellule de départ svp pour les Heures", _
"ADRESSE DE LA 1er CELLULE", "B6")

Pourquoi ca ne marchait pas dans mon UF???

Merci de ta réponse et de compliment :=)))))
FAb
 
@

@+Thierry

Guest
Arf !!!

Je suis sûr en relisant le tout !!! que Fab parlait de retour à la ligne dans le PopUp de message box lui même !!!

Tu aurait dû le préciser !! lol et comme je suis sûr que tu vas revenir !! je te post déjà la réponse !! lol

MISE EN FORME DANS LE POPUP DE MESSAGE :
=========================================
Pour un Retour Charriot c'est CHR(10) une Tabulation c'est Chr(9)...
Sub test()
TOTO = "TOTO"
MsgBox "il faut taper TOTO, " _
& Chr(13) & "Mais Vous avez tapé : " & Chr(10) & Chr(9) & TOTO, vbCritical,
"PAS BON FAUT TAPER TOTO"
End Sub

On peut aussi utiliser les Constantes comme indiqués ici :

vbCrLf = Chr(13) + Chr(10) Combinaison des caractères de retour chariot et de saut de ligne
vbCr = Chr(13) Caractère de saut de paragraphe
vbLf = Chr(10) Caractère de saut de ligne
vbTab = Chr(9) Caractère de tabulation
vbBack = Chr(8) Caractère de retour arrière


Ce qui donerait çà dans le même exemple
Sub test()
TOTO = "TOTO"
MsgBox "il faut taper TOTO, " _
& vbCrLf & "Mais Vous avez tapé : " & vbLf & vbTab & TOTO, vbCritical, _
"PAS BON FAUT TAPER TOTO"
End Sub


Voilà un dossier bien bouclén sauf que les Popup de message n'ont rien à voir avoir les UserForm !!! et existaient bien avant eux !!

Bonne Soirée
@+Thierry
 
@

@+Thierry

Guest
Eurf Fab

Tu me fais un Mix pas possible là !!

Ceci =
Depart = InputBox("Entrez la cellule de départ svp pour les Heures", _
"ADRESSE DE LA 1er CELLULE", "B6")
est un INPUTBOX
SYNTAX + InputBox(prompt[, title] [, default] [, xpos] [, ypos] [, helpfile, context])


Ceci =
Msg = MsgBox("Your active Printer is : " & ActivePrinter _
& vbCrLf & "For the completion of the Macro you need to" _
& vbCrLf & "change for a real printer." _
& vbCrLf & vbCrLf & "In the next Windows please Select a real printer" _
& vbCrLf & vbCrLf & vbTab & vbTab & vbTab & "Thank you, Thierry ", _
vbCritical, "Warning ACROBAT as Active Printer")
est un MSGBOX
SYNTAX = MsgBox(prompt[, buttons] [, title] [, helpfile, context])


Tu constate que çà n'a rien à voir

En INPUTBOX "Prompt message ", "Titre", "Info Déjà dans la saisie par défaut"

En MSGBOX "Prompt message", Button, "Titre"

J'espère que tu ccomprends ?
@+Thierry
 
@

@+Thierry

Guest
Non non Fab tu t'en vas pas comme çà !!

Tu me fais 100 lignes de suite :

Une MsgBox n'est pas une InputBox, Une MsgBox n'est pas une InputBox, Une MsgBox n'est pas une InputBox, Une MsgBox n'est pas une InputBox, Une MsgBox n'est pas une InputBox, Une MsgBox n'est pas une InputBox, Une MsgBox n'est pas une InputBox, Une MsgBox n'est pas une InputBox, Une MsgBox n'est pas une InputBox, Une MsgBox n'est pas une InputBox, Une MsgBox n'est pas une InputBox, Une MsgBox n'est pas une InputBox, Une MsgBox n'est pas une InputBox, Une MsgBox n'est pas une InputBox, Une MsgBox n'est pas une InputBox, Une MsgBox n'est pas une InputBox, Une MsgBox n'est pas une InputBox, Une MsgBox n'est pas une InputBox,

lol
@+Thierry
 
F

fabrice

Guest
Pardon Maitre,

V'la ma punition :=(

Je peux allez me coucher maintenant ???

FAb
 

Pièces jointes

  • Punition_Thierry.xls
    20.5 KB · Affichages: 76
  • Punition_Thierry.xls
    20.5 KB · Affichages: 84
  • Punition_Thierry.xls
    20.5 KB · Affichages: 85

Discussions similaires

Statistiques des forums

Discussions
312 361
Messages
2 087 604
Membres
103 605
dernier inscrit
gabriel morency