format de caractères dans textbox

news

XLDnaute Impliqué
Bonjour à tous du forum,

Dans un Userform, je ne sais pas comment définir que si les 4 caractères ("légu" ou "bièr") se trouvent dans le text mis dans la Textbox, alors renvoi d'une Msgbox("format invalide").

p.ex.: "les tomates et oignons sont des légumes" ou "il y a beaucoup de sortes de bières", >> Msgbox(format invalide")

J'utilise le vba code suivant, mais il y du bug ou ne résoud pas complètement:

If Mid(TextBox2.Value, 1, 4) = "légu" Or Mid(TextBox2.Value, 1, 4) = "bièr"
Or Mid(TextBox2.Value, 2, 4) = "légu" Or Mid(TextBox2.Value, 2, 4) = "bièr" Then Msgbox("format invalide")
Elseif Find(TextBox2.Value) = "légu" Or Find(TextBox2.Value) = "bièr" Then Msgbox("format invalide")


Comment résoudre ?

news
 
Dernière édition:

job75

XLDnaute Barbatruc
Re : format de caractères dans textbox

Bonjour news, Papou, le forum,

Ce n'est pas un problème de Then Papou :)

Find n'existe pas tout seul en VBA.

Si vous voulez l'équivalent de TROUVE dans une feuille de calcul (qui respecte la casse), il faut écrire (2 arguments) :

Code:
If IsNumeric([COLOR="Red"]Application.[/COLOR]Find("légu", TextBox2.Value)) Or IsNumeric([COLOR="Red"]Application.Find[/COLOR]("bièr", TextBox2.Value)) Then MsgBox ("format invalide")

ou plus simplement :

Code:
If TextBox2 Like "*légu*" Or TextBox2 Like "*bièr*" Then MsgBox ("format invalide")


Si la casse n'a pas d'importance (équivalent de CHERCHE) :

Code:
If IsNumeric(Application.[COLOR="Red"]Search[/COLOR]("légu", TextBox2.Value)) Or IsNumeric(Application.[COLOR="Red"]Search[/COLOR]("bièr", TextBox2.Value)) Then MsgBox ("format invalide")

Edit : salut Staple et pierrejean :):) OK pour InStr (qui respecte la casse).

A+
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 380
Messages
2 087 798
Membres
103 664
dernier inscrit
wolvi71