• Initiateur de la discussion Initiateur de la discussion Elolu
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Elolu

XLDnaute Nouveau
Bonjour à toutes et tous,

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

Si quelqu'un pouvait m'aiguiller ce serai cool 🙂

Merci
 
Re : Masque de saisie

Bonjour Elulo, Lone-wolf


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"
 
Re : Masque de saisie

Bonjour camarchepas

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


A+ 😎
 
Dernière édition:
Re : Masque de saisie

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 !
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
169
  • Question Question
Microsoft 365 Contrôle sur date
Réponses
8
Affichages
277
Retour