Extraction du code du département

  • Initiateur de la discussion Initiateur de la discussion KIM
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

KIM

XLDnaute Accro
Bonjour le forum, bonjour les ami(e)s,
J'ai fait ma recherche sur le site mais sans succès. Je fais appel à vous et vous en remercie d'avance.
Je recherche 2 solutions :
1/ Extraire le code du département pour la france, les dom tom et l'étranger par une seule formule ou code vba;
2/ Compléter les autres colonnes du département selon la table dans l'onglet L_DptReg

1/ Pour extraire le code département d'une liste de codes postaux. j'utilise la formule suivante :
=GAUCHE(TEXTE(B6;"00000");2) et je l'adapte selon les cas ci-dessous :
- Pour les codes postaux des villes en france, aucun problème
- Pour les DOM TOM, je récupère seulement les 2 premiers car sinon =GAUCHE(TEXTE(B29;"00000");3)
- Pour les villes à l'étranger j'ai saisi un seul code le 99. par cette formule je récupère 00 sinon =GAUCHE(TEXTE(B25;"00");2)
je recherche une seule solution, formule ou macro, à appliquer pour tous les cas évoqués.
Est-ce possible ?
Merci
KIM
 

Pièces jointes

Bonjour le fil et le forum,
@piga25
Merci pour ta formule, elle est restreinte car elle ne gère que le code 97, manque le code 98. Je peux la modifier sans problème.

@Jocelyn,
Réponse complète par formule comme d'habitude avec les données complétées du tableau de référence des départements et régions.
Je vais l'appliquer tout de suite.
Est-il possible de gérer les erreurs dans ta formule si code département erroné ?

Merci pour vous deux.

PS : Si des spécialistes vba sont disponibles, Je suis aussi preneur d'une version vba qui extrait le code département et complète les autres colonnes.

Merci encore pour toute votre aide
KIM
 
re,

Tu entends quoi par code département erroné

quand on a 99 la formule considére le code dep erroné et met "Etranger" cela gére le 99 maintenant si il y a un autre type d'erreur donne nous un exemple

A te lire

Cordialement
 
Re bonjour le fil,
@Jocelyn,
Merci pour l'explication. C'est clair.
En reprenant ma base de travail, je retrouve pour l'étranger des codes 99 et 99000.
Pour 99, je retrouve 99 comme code du département,
Par contre pour 99000, je retrouve 990 comme code du département.
Je peux corriger ma base si nécessaire et remplacer les 99000 par 99. Sinon est-ce compliqué de le traiter dans ta formule col E?

Merci d'avance
KIM
 
Bonjour le fil, bonjour Pierrejean,
Comment vas-tu? j'espère que tu n'as pas trop souffert avec la chaleur de ces derniers jours.
Merci pour le code. Je viens de le tester
1/ Pour le traitement des codes département 99, est -il possible de compléter les colonnes par "Etranger" ?
2/ Pour un tableau de 40 lignes, le traitement est long. j'ai rajouté au début et à la fin du code :
Application.ScreenUpdating = False
Application.ScreenUpdating = True
Il y a eu une très légère amélioration. J'ai l'impression qu'il traite ligne par ligne. Il y a plusieurs milliers de lignes dans mes tableaux. Y-a-t-il moyen d'améliorer le code ?
Merci d'avance
KIM
 
Bonjour le forum, bonjour les ami(e)s,
J'ai fait ma recherche sur le site mais sans succès. Je fais appel à vous et vous en remercie d'avance.
Je recherche 2 solutions :
1/ Extraire le code du département pour la france, les dom tom et l'étranger par une seule formule ou code vba;
2/ Compléter les autres colonnes du département selon la table dans l'onglet L_DptReg

1/ Pour extraire le code département d'une liste de codes postaux. j'utilise la formule suivante :
=GAUCHE(TEXTE(B6;"00000");2) et je l'adapte selon les cas ci-dessous :
- Pour les codes postaux des villes en france, aucun problème
- Pour les DOM TOM, je récupère seulement les 2 premiers car sinon =GAUCHE(TEXTE(B29;"00000");3)
- Pour les villes à l'étranger j'ai saisi un seul code le 99. par cette formule je récupère 00 sinon =GAUCHE(TEXTE(B25;"00");2)
je recherche une seule solution, formule ou macro, à appliquer pour tous les cas évoqués.
Est-ce possible ?
Merci
KIM
 
En mode formules simples

En E6 : =SI(STXT(B6;1;2)>="97";STXT(B6;1;3);STXT(B6;1;2))
En F6 : =SIERREUR(RECHERCHEV(E6;L_DptReg!B:E;2;0);"")
En G6 : =SIERREUR(RECHERCHEV(E6;L_DptReg!B:E;3;0);"")
En H6 : =SIERREUR(RECHERCHEV(E6;L_DptReg!B:E;4;0);"")
et on descend les formule
etc...
Cordialement
 
Bonsour®
1/ Pour extraire le code département d'une liste de codes postaux. j'utilise la formule suivante :
=GAUCHE(TEXTE(B6;"00000");2) et je l'adapte selon les cas ci-dessous :
- Pour les codes postaux des villes en france, aucun problème
- Pour les DOM TOM, je récupère......... =GAUCHE(TEXTE(B29;"00000");3)
- Pour les villes à l'étranger j'ai saisi un seul code le 99. par cette formule je récupère 00 sinon =GAUCHE(TEXTE(B25;"00");2)
je recherche une seule solution, formule ou macro, à appliquer pour tous les cas évoqués.
Est-ce possible ?
Merci
KIM
une autre proposition tout en formule

à noter :
ajout à la liste des départements et listes nommées
- il n'existe pas de code postal Corse 2A ou 2B mais 20xxx
- Monaco utilise le code postal à la française "980xx" à ne pas pas inclure dans les TOM
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
19
Affichages
2 K
Réponses
1
Affichages
1 K
Réponses
4
Affichages
3 K
Réponses
9
Affichages
6 K
Retour