Visual Basic + Regex + fichier xlxs ou csv

Messages postés
4
Date d'inscription
vendredi 11 octobre 2019
Statut
Membre
Dernière intervention
11 octobre 2019
- - Dernière réponse : Whismeril
Messages postés
13829
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
16 octobre 2019
- 11 oct. 2019 à 23:53
Bonjour,
voilà j'ai un fichier excel comportant par exemple des numéros de téléphone.
Plusieurs utilisateurs ont alimentés ce fichier du coup il y a des problème de format avec les numéros de téléphone. Certains ont mis des espaces, des virgules, des points...
Au final une recherche simple le fichier excel devient problématique.
J'avais pensé à utiliser une regex dans excel via le visual basic je ne sais si c'est possible... Et je ne sais pas du tout comment le mettre en place ...
Voici ma regex : ([0]{1})([1-9]{1})[ .,/-]?[1-9]{2}[ .,/-]?[1-9]{2}[ .,/-]?[1-9]{2}[ .,/-]?[1-9]{2}
Est-il possible de reformater tout dans le format que je souhaite ou sinon de faire une recherche en prenant en compte les différences qu'il peut y avoir...
Merci pour votre réponse
Afficher la suite 

2 réponses

Messages postés
6274
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
16 octobre 2019
398
0
Merci
Bonjour,

avec la fonction Replace. Tu as un modèle pour une colonne entière.
Tu fais plusieurs passages pour arriver à ce que tu veux: espace, tiret etc.

https://silkyroad.developpez.com/VBA/ManipulerChainesCaracteres/#LI-J

Commenter la réponse de cs_Le Pivert
Messages postés
13829
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
16 octobre 2019
401
0
Merci
Bonjour

Une regex est l’outil idéal pour ce que tu cherches à faire.
Copie le lien ci dessous
http://regexstorm.net/tester?p=%28%28%3f%3a0%7c%5c%2b%5cd%5cd%29%5cd%29%5b_%5c-+.%5d%3f%28%5cd%5cd%29%5b_%5c-+.%5d%3f%28%5cd%5cd%29%5b_%5c-+.%5d%3f%28%5cd%5cd%29%5b_%5c-+.%5d%3f%28%5cd%5cd%29&i=01.23.45.67.89%0d%0a02+34+56+78+91%0d%0a0345678912%0d%0a04-56-78-91-23%0d%0a05_67_89_12_34%0d%0a%2b336.78+90-12_45&r=%241+%242+%243+%244+%245

Clique sur l’onglet « Table » pour voir les captures, les groupes et les résultats des remplacements.

Pour utiliser les regex en VBA https://cafeine.developpez.com/access/tutoriel/regexp/
Commenter la réponse de Whismeril