EXCEL: verifier le bon format d'une cellule.
Résolu/Fermé
rapt
-
6 mars 2012 à 09:49
michel_m
michel_m
- Messages postés
- 16574
- Date d'inscription
- lundi 12 septembre 2005
- Statut
- Contributeur
- Dernière intervention
- 3 août 2022
A voir également:
- Format cellule excel personnalisé texte
- Format de cellule excel - Meilleures réponses
- EXCEL: verifier le bon format d'une cellule. ✓ - Forum - Programmation
- Excel 2010 définir le format d'une cellule ✓ - Forum - Excel
- Excel: attribution d'un format à une cellule ✓ - Forum - Excel
- Excel impossible de changer le format d'une cellule ✓ - Forum - Excel
- Excel vérifier si 3 cellules sont identiques ✓ - Forum - Excel
5 réponses
michel_m
6 mars 2012 à 11:19
- Messages postés
- 16574
- Date d'inscription
- lundi 12 septembre 2005
- Statut
- Contributeur
- Dernière intervention
- 3 août 2022
6 mars 2012 à 11:19
Bonjour
test avec une expression rationnelle (à vérifier) mais c'est peut-^tre un peu ardu si tu es novice. la fonction insensible à la casse, te renvoie VRAI ou FAUX
pour installer:
copier ce code
aller dans VBA par Alt+F11
insertion-module
coller le code
enregistrer au format "macro" si tu as XL>=2007
pour fonctionner
formules-fonction personnalisée
il faut autoriser les macros: tu dis ta version si tu ne sais pas faire
j'ai testé la fonction mais peut-^tre pas tout : a toi de jouer et dire si OK ou pas :o)
test avec une expression rationnelle (à vérifier) mais c'est peut-^tre un peu ardu si tu es novice. la fonction insensible à la casse, te renvoie VRAI ou FAUX
Function verifier_format(texto As String) As Boolean Dim reg As Object Dim verif As Object Set reg = CreateObject("vbscript.regexp") reg.Global = False 'admet les majuscules reg.IgnoreCase = True reg.Pattern = "^[a-z]{3,}[0-9]+[-][a-z]{1,2}[0-9]{5,}" Set verif = reg.Execute(texto) verifier_format = (verif.Count = 1) Set verif = Nothing Set reg = Nothing End Function
pour installer:
copier ce code
aller dans VBA par Alt+F11
insertion-module
coller le code
enregistrer au format "macro" si tu as XL>=2007
pour fonctionner
formules-fonction personnalisée
il faut autoriser les macros: tu dis ta version si tu ne sais pas faire
j'ai testé la fonction mais peut-^tre pas tout : a toi de jouer et dire si OK ou pas :o)
lermite222
Modifié par lermite222 le 6/03/2012 à 11:38
- Messages postés
- 8702
- Date d'inscription
- dimanche 8 avril 2007
- Statut
- Contributeur
- Dernière intervention
- 22 janvier 2020
Modifié par lermite222 le 6/03/2012 à 11:38
Bonjour, bonjour michel,
Une autre approche ?
A+
Edit : pour que ce ne soit pas sensible à la case (accepté maju et minuscule) mettre en tête de module
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
Une autre approche ?
Sub Test() Dim T As Boolean T = "LLLC-L(L)22223" Like "????[-]?[(]?[)]#####" If T Then MsgBox ("Format conforme") End Sub
A+
Edit : pour que ce ne soit pas sensible à la case (accepté maju et minuscule) mettre en tête de module
Option Compare Text
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
euh je me demandes ou enregistrer au fromat macro. J'ai reussi a crée le module et copier/coller le code mais je viens de chercher comment enregistrer en macro et j'avoue que je seches ^^'
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
6 mars 2012 à 12:18
6 mars 2012 à 12:51
6 mars 2012 à 12:59
6 mars 2012 à 14:28
reg.Pattern = "^[a-z]{3,}[0-9]+[-][a-z]{1,2}[0-9]{5}$"
6 mars 2012 à 16:26
a bientôt