Séparation Adresse Excel
Résolu/Fermé
Rockoff
-
1 août 2011 à 11:00
pilas31 Messages postés 1825 Date d'inscription vendredi 5 septembre 2008 Statut Contributeur Dernière intervention 24 avril 2020 - 2 août 2011 à 11:56
pilas31 Messages postés 1825 Date d'inscription vendredi 5 septembre 2008 Statut Contributeur Dernière intervention 24 avril 2020 - 2 août 2011 à 11:56
A voir également:
- Séparation Adresse Excel
- Darkino nouvelle adresse - Guide
- Rechercher ou entrer l'adresse - Guide
- Darkino : le grand site pirate change d'adresse et d'interface - Accueil - Services en ligne
- Liste déroulante excel - Guide
- Adresse mac - Guide
2 réponses
pilas31
Messages postés
1825
Date d'inscription
vendredi 5 septembre 2008
Statut
Contributeur
Dernière intervention
24 avril 2020
644
1 août 2011 à 15:57
1 août 2011 à 15:57
Voilà j'ai fait une petite macro exemple avec un algorithme en VBA:
Le fichier est un peu lourd car j'ai mis un onglet CP_VILLE dans lequel se trouvent tous les codes postaux associés aux villes (je pense qu'elle vient de l'INSEE).
Comme la liste des villes est sans tiret, sans apostrophe et qu'il y a ST à la place de SAINT. Je normalise au début l'adresse.
La macro à lancer s'appelle « EXTRAIRE_VILLE »
Quand il ne trouve pas il indique l'erreur en colonne 3
télécharger ici :
http://www.cijoint.fr/cjlink.php?file=cj201108/cij06iXBdv.xls
Me dire si c'est ok. C'est à retravailler en fonction des échecs rencontrés.
Elle n'est pas optimisée elle va "ramer" un peu ....
A+
Le fichier est un peu lourd car j'ai mis un onglet CP_VILLE dans lequel se trouvent tous les codes postaux associés aux villes (je pense qu'elle vient de l'INSEE).
Comme la liste des villes est sans tiret, sans apostrophe et qu'il y a ST à la place de SAINT. Je normalise au début l'adresse.
La macro à lancer s'appelle « EXTRAIRE_VILLE »
Quand il ne trouve pas il indique l'erreur en colonne 3
télécharger ici :
http://www.cijoint.fr/cjlink.php?file=cj201108/cij06iXBdv.xls
Me dire si c'est ok. C'est à retravailler en fonction des échecs rencontrés.
Elle n'est pas optimisée elle va "ramer" un peu ....
A+
pilas31
Messages postés
1825
Date d'inscription
vendredi 5 septembre 2008
Statut
Contributeur
Dernière intervention
24 avril 2020
644
1 août 2011 à 11:27
1 août 2011 à 11:27
Bonjour,
Il est possible de supprimer les cinq derniers caractères et d'essayer de retrouver la ville mais il n'y a pas de séparateurs fiable (car l'espace peut être dans le nom composé d'une ville).
Ma suggestion est la suivante. Télécharger un tableau de correspondance entre le code postal et la ville (on en trouve en téléchargement sous format excel avec 36 000 lignes). mettre ce tableau dans une feuille du classeur
Extraire le code postal de l'adresse avec une formule du type =DROITE(A1;5)
Puis avec un RECHERCHEV trouver dans le tableau de correspondance la ville.
A+
Il est possible de supprimer les cinq derniers caractères et d'essayer de retrouver la ville mais il n'y a pas de séparateurs fiable (car l'espace peut être dans le nom composé d'une ville).
Ma suggestion est la suivante. Télécharger un tableau de correspondance entre le code postal et la ville (on en trouve en téléchargement sous format excel avec 36 000 lignes). mettre ce tableau dans une feuille du classeur
Extraire le code postal de l'adresse avec une formule du type =DROITE(A1;5)
Puis avec un RECHERCHEV trouver dans le tableau de correspondance la ville.
A+
chossette9
Messages postés
4239
Date d'inscription
lundi 20 avril 2009
Statut
Contributeur
Dernière intervention
12 septembre 2014
1 308
1 août 2011 à 11:37
1 août 2011 à 11:37
Bonjour pilas,
ta solution semble adaptée aux besoins de Rockoff, mais je pense qu'elle a des limites, car comment choisir la bonne ville quand plusieurs ont le même code postal ?
Cordialement.
ta solution semble adaptée aux besoins de Rockoff, mais je pense qu'elle a des limites, car comment choisir la bonne ville quand plusieurs ont le même code postal ?
Cordialement.
pilas31
Messages postés
1825
Date d'inscription
vendredi 5 septembre 2008
Statut
Contributeur
Dernière intervention
24 avril 2020
644
1 août 2011 à 11:50
1 août 2011 à 11:50
Oui, tu as raison, plusieurs villes peuvent avoir le même CP. Donc je ne vois pas de solution simple sauf faire un algorithme en VBA pour retrouver dans la liste des villes correspondant à ce CP celle qui se trouve dans l'adresse initiale mais il risque d'y avoir des échecs si la ville n'est pas exactement orthographiée de la même manière...
chossette9
Messages postés
4239
Date d'inscription
lundi 20 avril 2009
Statut
Contributeur
Dernière intervention
12 septembre 2014
1 308
1 août 2011 à 11:52
1 août 2011 à 11:52
Effectivement, il ne reste dans ce cas que le VBA, et ça risque d'être compliqué à réaliser...
Merci pour vos réponses , je viens de tester la solution de Pilas31 et en effet il y 'a un leger problème pour les villes ayant des CP identiques. Je pense aussi que le VBA reste la derniere solution mais que la réalisation est difficile ( voir impossible ?) . Si quelqu'un passe par là et est tenté de m'aider :)
pilas31
Messages postés
1825
Date d'inscription
vendredi 5 septembre 2008
Statut
Contributeur
Dernière intervention
24 avril 2020
644
1 août 2011 à 14:20
1 août 2011 à 14:20
Re bonjour,
Je vais essayer de proposer quelque chose dans cet esprit...
A+
Je vais essayer de proposer quelque chose dans cet esprit...
A+
1 août 2011 à 16:37
J'ai l'impression de demander toujours trop, ce que tu as fait m'aide deja beaucoup !
Je te remercie pour ton aide !
Modifié par pilas31 le 1/08/2011 à 17:01
le On error juste après le For
et le FIN: juste avant le next
Le reste de la macro est inchangé. Si il se produit une erreur excel, il ne bloque pas il inscrit le numéro de l'erreur en colonne 3.
2 août 2011 à 11:24
"Erreur de compilation
Next sans For"
et me surligne le next ligne avant End Sub
une idée ?
2 août 2011 à 11:31
Je pense que tu as peut-être involontairement écrasé une instruction. Comme elle n'est pas trés longue je te redonne la totalité de la macro qui fonctionne chez moi:
A+
2 août 2011 à 11:54
Merci beaucoup pour le temps que tu as passé dessus !
Problem solved