Expression régulière en vba?
Bonjour,
j'ai actuellement une macro que j'ai crée qui teste des noms de fichiers et qui surveille la forme de ceux ci. Là ou j'ai un problème c'est que je voudrais pouvoir détecter des chiffres de 0 à n fois ( l'équivalent de * en expression régulière ).
Voici ma fonction (simplifiée) qui teste le nom:
Code:
1 2 3 4 5 6 7 8 9 10
|
'Fonction qui verifier si le nom du fichier est un nom de fichier valide
Function NomFichierValide(NomFichier) As Boolean
NomFichierValide =
(NomFichier Like "[A-Z][A-Z][A-Z][A-Z]") Or
(NomFichier Like "[A-Z][A-Z][A-Z][A-Z]#*") Or
(NomFichier Like "[A-Z][A-Z][A-Z][A-Z]##*") Or
(NomFichier Like "[A-Z][A-Z][A-Z][A-Z]###*") Or
(NomFichier Like "[A-Z][A-Z][A-Z][A-Z]####*")
End Function |
J'en suis rendu à 8 chiffres maximum dans ma fonction complète et je voudrais bien pouvoir mettre une fonction généraliste. J'ai déjà pensé faire une boucle sur toute la fin et tester caractère par caractère si celui ci est un chiffre ou alors d'utiliser la fonction val pour reconnaitre le nombre à partir du 5eme caractère.
J'attend vos conseils pour une solution plus légère.
Merki beaukoup :D