J'ai sur une feuille un USF avec des texbox's qui l'alimentent rien de plus normal ...
Problème 1 : J'ai réalisé un masque de saisie pour toujours avoir un enregistrement de type RBL-11-1468 ( 3 majuscules,un tiret, deux chiffres, un tiret, quatre chiffre, je cherche la macro de vérification qui en exit du textbox va me vérifier la conformité de la saisie car avec l'habitude les gens vont dans un premier temps continuer a taper le tiret et je risque de me retrouver avec un RBL-- ): dans ce cas afficher un msgbox format non valide. les tirets sont affichés automatiquement .
Problème numéro deux : je n'arrive pas a réaliser un masque de saisie pour avoir un type L006e-001 ( soit une majuscule, toujours la première suivi de trois chiffres,une minuscule, un tiret et 3 chiffres) avec bien sûr si possible l'insertion du tiret en automatique , mais aussi avec la vérification de la saisie en exit du textbox et msgbox format non valide
Voici dans un premier temps le code de vérification,
il faut bien sur adapter le numéro de la textbox et le message généré.
Code:
Entrée = textbox1.Text
If Mid(Entrée, 4, 1) <> "-" Or Mid(Entrée, 7, 1) <> "-" Or Len(Entrée) <> 11 Then MsgBox "Entrée " & Entrée & " est non conforme"
On peux même écrire des heures sans ":" - ou une date sans ". - /", grâce à ton code.
Code:
'Pour les heures
Private Sub TextBox1_Change()
Dim val As Long
'On limite le nombre de caractères dans la textbox avec "MaxLength"
val = Len(TextBox1)
If val = 2 Then: TextBox1 = TextBox1 & ":": Exit Sub
If val = 6 Then: TextBox1 = TextBox1 & "": Exit Sub
TextBox1.MaxLength = 5
End Sub
'Pour les dates
Private Sub TextBox1_Change()
Dim val As Long
'On limite le nombre de caractère dans la textbox avec "MaxLength"
val = Len(TextBox1)
If val = 2 Or val = 5 Then: TextBox1 = TextBox1 & ".": Exit Sub
TextBox1.MaxLength = 10
End Sub
Bonjour camarchepas, Lone-wolf
Merci pour le verrouillage du textbox2 c'est plus que ce dont je pouvais imaginer
Pour le textbox3 j'arrive à mettre la première en majuscule, le tiret en automatique mais je n'arrive pas à forcer le 5ème caractère en minuscule .
Une idée ?
Merci !
Bonjour,
Voir en pièce jointe. Attention ! Regex :
Dans le menu VBA : Outils > Références...
Nécessité de cocher la référence "Microsoft VBScript Regular Expression 5.5"