Affectation de préfixe de façon automatique

Bonjour,

j'y connais pas grand chose en macro et j'ai été ravi de tombé sur ce forum et son cours vba.

Voila mon problème.
j'ai exporté mes contact téléphonique ( iphone =vcf ) vers le pc puis je les convertis en csv via un utilitaire afin de l'ouvrir sur excel via l'onglet données>importer a partir d'un fichier texte/csv. Jusque la tout ce pas bien.
Il se présente comme suit : Fichier 1 = voir piece jointes.

Suite du passage de 8 chiffres à 10 chiffres au niveau de la numérotation téléphonique je voudrais de facon automatique ajouter des préfixe définie a chaque numéro correspondant a sont operateur.

un exemple : le numero est le suivant : 59460988; si le deuxième chiffre est = 7, 8, 9 alors ajouter le préfixe 07 donc la cellule avec le numero devient 0759460988 sinon si le deuxième chiffre =1,2,3 alors ajouter 01 ainsi la cellule de vient.... et ainsi de suite.

serait ce possible d'avoir une macro pour cela c'est a dire qui verifie les differentes cellules et moddifie le numero si les conditions sont remplie sinon il ne modifie rien et passe au suivant.

suis la pour toute question; Merci infiniment d'avance pour votre temps.

29fichier-1.xlsx (18.08 Ko)

Bonjour,

Le fichier exemple est vide ; on ne voit pas ou se trouve le fameux 2ème chiffre ?

Merci de mettre un exemple dans le fichier.

"Bonjour,

Le fichier exemple est vide ; on ne voit pas ou se trouve le fameux 2ème chiffre ?

Merci de mettre un exemple dans le fichier."

Voici le fichier :

16fichier-1.xlsx (18.11 Ko)

Je dois être bête mais j'y comprends toujours rien à part trois nombres de 8 chiffres je vois rien d'autres je vois pas ce qui pourrait indiquer les deux

premiers chiffres à ajouter ? 06 ? 07 ? ....

Bonjour,

tu es sûr de ton coup là ?
Déterminer le chiffre de zone à partir des 8 chiffres restants n'est d'aucune certitude.
Je peux te donner des dizaines de milliers de n° à 8 chiffres avec un 9 en 2nde position qui sont en 01 et non en 07.

Si tu parles d'un autre plan de numérotation que la france, il faut préciser

et ainsi de suite.

ne suffit pas, il faut tous les détails
eric

Maintenant que Eriic m'y fait penser Il n'y aurait pas un problème au niveau de la conversion de iphone =vcf vers csv ??

Normalement l'enregistrement c'est du genre +33659460948 donc en admettant que l'export ne tienne pas compte de l'indicatif pays (+33)

Tu devrais récupérer 9 chiffre pas 8 et à ce moment là il sera plus facile de demander à excel d'afficher le zéro devant.

Je pense qu'il s'agit d'un autre pays. Ca fait quand même une paire d'années que nous sommes passés à 10 chiffres en france.
Ce que je trouve étrange c'est que ce soit le 2nd chiffre et non le 1er qui détermine la zone. Pourquoi pas, mais ça demande confirmation

Je pense qu'il s'agit d'un autre pays. Ca fait quand même une paire d'années que nous sommes passés à 10 chiffres en france.
Ce que je trouve étrange c'est que ce soit le 2nd chiffre et non le 1er qui détermine la zone. Pourquoi pas, mais ça demande confirmation

Oui mais dans son exemple il n'y a pas de 7

"un exemple : le numero est le suivant : 59460988; si le deuxième chiffre est = 7, 8, 9 alors ajouter le préfixe 07 donc la cellule avec le numero devient 0759460988 sinon si le deuxième chiffre =1,2,3 alors ajouter 01 ainsi la cellule de vient.... et ainsi de suite."

effectivement, le pays est pas celui de la France.
nous actuellement a 8 chiffres et il aura un passage prochain a 10 chiffre.
nous avons 3 operateur : orange et deux autres...

chaque operateur ajoutera un préfixe propre a lui ( orange = 07 )

- comment reconnaitre a quel operateur appartient un numéro afin de lui ajouter le préfixe adéquat ?

exemple :

le numero = 5X 09 55 77; on regarde le deuxième chiffre, donc le X

**si X = 2 ou 2 ou 3 alors le numero 5X 09 55 77 appartient a l'operateur Moov donc ajouter le prefixe 01 et il devient 01 5X 09 55 77.

**si X = 4 ou 5 ou 6 alors le numero 5X 09 55 77 appartient a l'operateur Azerty donc ajouter le prefixe 05 et il devient 05 5X 09 55 77.

**si X = 7 ou 8 ou 9 alors le numero 5X 09 55 77 appartient a l'operateur Orange donc ajouter le prefixe 07 et il devient 07 5X 09 55 77.

NB : le fichier excel est plus fourni que celui fourni vu que le forum demande a ne pas importé des informations personnelles

Une proposition.
Pour traiter une colonne, double-clic sur son entête en ligne 1. Accepter les macros à l'ouverture.

27fichier-1.xlsm (27.25 Ko)

Je met le résultat en chaine et non en numérique pour conserver le 0 de tête.

Si besoin, la fonction nouvnum() est utilisable sur feuille. Voir exemple en J3
eric

effectivement, le pays est pas celui de la France.
nous actuellement a 8 chiffres et il aura un passage prochain a 10 chiffre.
nous avons 3 operateur : orange et deux autres...
NB : le fichier excel est plus fourni que celui fourni vu que le forum demande a ne pas importé des informations personnelles

Ok je comprends mieux. mais je doutes que ce soit aussi facile. Exemple en colonne H tu as un numéro 61023580 tu ne parles pas du chiffre 1 ?

Par ailleurs si ton répertoire contient des numéros de fixes ; alors si je ne me suis pas trompé de pays le préfixe sera 25 27 ou 21 non ?

En outre chez vous les opérateurs n'acceptent pas la "portabilité du numéro" ( conservation de son ancien numéro tout en changeant d'opérateur )

Car dans ce cas, le coup du deuxiéme chiffre c'est encore plus alléatoire.

Rechercher des sujets similaires à "affectation prefixe facon automatique"