[RECHERCHEV] Faire correspondre codes postaux à départements/régions

Bonjour,

Animateur d'une association disposant d'un annuaire de +3000 personnes disséminées à travers la France entière, je suis en train de refondre mon annuaire pour améliorer l'outil et je suis confronté à un problème lié à la formule RECHERCHEV. J'apprécierais énormément une aide sur le sujet. Je joins deux fichiers d'exemple.

Je souhaite qu'en renseignant un code postal dans une colonne, le nom de la région correspondante s'affiche automatiquement dans la colonne située à sa droite. Par exemple, pour un code postal dans l'Ain, "01000" renverrait "Auvergne-Rhône-Alpes" et pour l'Aveyron, "12000" = "Occitanie".

Les codes postaux français contiennent invariablement 5 chiffres donc les 9 premiers départements commencent par "0". Pour leur bon affichage, il faut donc soit utiliser le format spécial "Code postal", soit "0####", soit "Texte" (corrigez moi si je me trompe). Sinon, ils sont considérés comme des chiffres par excel et le "0" disparait.

Pour afficher le nom de la Région, je formate la colonne "Code postal" au format "Texte" puis dans la 2nde colonne, j'utilise "=GAUCHE(Case;2)" pour en extraire les 2 premiers caractères. J'utilise ensuite RECHERCHEV dans la 3e colonne pour extraire (d'un autre onglet) le nom de la Région dont fait partie le département (en référence à la valeur obtenue dans la 2nde colonne). Tout fonctionne bien jusqu'au passage entre 09000 et 10000. Pour tous les départements au delà de 09, la Région est invariablement "Occitanie"...

J'ai bien compris que l'utilisation de RECHERCHEV nécessite que toutes les cellules du tableau de référence soient au même format (texte et texte, nombre et nombre, etc.) mais même en les formatant toutes de la même manière, cela ne fonctionne pas. Quel que soit le format utilisé, il y a toujours un souci.

Par contre, si je colle sans formatage les valeurs des numéros de département de mon tableau de référence dans un nouveau tableur et que je refais la formule RECHERCHEV, ça fonctionne (à peu près) : voir le fichier "Annuaire test sans format" ci-joint.

Auriez vous s'il vous plait une solution à mon problème ? La formule RECHERCHEV est elle adaptée à ma demande ? Si non, quelle pourrait être l'alternative ?

J'espère avoir été clair dans mes explications. Je vous remercie par avance pour votre aide précieuse ! Bien cordialement,

1'360annuaire-test.xlsx (372.73 Ko)

Bonjour,

quand tu fais Recherchev() et que tu cherches la valeur exacte il faut mettre FAUX en 4ème paramètre.

Sinon, si non trouvé, il te ramène la valeur proche qui n'est pas celle qui t'intéresse.

Avec ce paramètre tu vois que le recherchev() te ramène N/A! maintenant : ce qui est plus exact, il n'a pas trouvé.

Je pense qu'avec tes essais tu l'as un peu perdu et certains nombres paraissant être en texte étaient convertis en numérique par excel.

Pour simplifier et bien voir ce à quoi on a affaire j'ai tout mis en numérique.

Je n'ai fait que la Région.

eric

Bonjour,

Dans l'annuaire test sans format, il suffit de rajouter faux à la fin de recherchev pour résoudre le problème :

=RECHERCHEV(A2;Test_régions;3;FAUX)

Le faux permet de chercher la valeur exacte, et pas une qui s'en approche.

Dans l'annuaire test, je vous préconise de tout mettre en nombre dans l'onglet "départements par région", puis dans la formule de l'autre onglet (le +0 convertie automatiquement le département en chiffre) :

=RECHERCHEV(B2+0;'Départements par région'!$A$2:$C$95;3;FAUX)

Cindy

Le faux permet de chercher la valeur exacte, et pas une qui s'en approche.

Bonjour à tous,

j'ai toujours trouvé regrettable que ce paramètre soit optionnel. Cela induit souvent des erreurs.

A contrario, dans DECALER, le paramètre colonne est obligatoire ! curieux ...

Bonjour à tous,

Ah, j'ai raté en mettant le fichier...

Le voici

eric

907annuaire-test.xlsx (370.28 Ko)

Bonjour,

un grand merci pour vos réponses rapides et précises ! Pour mon premier post, je suis impressionné !

Ca fonctionne ! J'ai utilisé la formule fournie par Cindy : =RECHERCHEV(B2+0;'Départements par région'!$A$2:$C$95;3;FAUX) et le conseil de formatage d'Eric : ma colonne DEPT est désormais en format Personnalisé 00.

J'ai fait une petite adaptation pour éviter les signalement d'erreur (#VALEUR!) pour ceux qui n'ont pas de code postal en encapsulant mon RECHERCHEV dans =SI(B2="";"").

J'ai une dernière question (et je signalerai ensuite le fil comme résolu ) : pour les Suisse, Québecois ou autres, le Code Postal commence par une lettre (G1R-...) ou n'est composé que de 4 chiffres. On ajoute CH ou QC pour ne pas les confondre avec les CP français. Or, avec ma formule complète =SI(B2="";"";RECHERCHEV(B2+0;Régions;3;FAUX)), Excel me renvoie une erreur #VALEUR! pour ces lignes. Auriez vous une solution à ce dernier problème s'il vous plait ?

Enfin, Eric, je n'ai pas bien compris la formule dans le fichier que tu m'as renvoyé : à quoi sert le "ENT(A2/1000)" ?

MERCI pour toutes vos réponses !!!! C'est particulièrement précieux ! Bonne journée.

Bonjour,

Pouvez vous renvoyer votre fichier pour qu'on voit à quoi ça ressemble ?

Cindy

Bonjour,

Ma version en utilisant la mise en format texte de la colonne la colonne A

522annuaire-test-2.xlsx (335.22 Ko)

Oops

j'avais oublie de mettre la colonne A du deuxième onglet en format texte aussi

314annuaire-test-3-1.xlsx (335.44 Ko)

Enfin, Eric, je n'ai pas bien compris la formule dans le fichier que tu m'as renvoyé : à quoi sert le "ENT(A2/1000)" ?

Pour récupérer le n° de département vu que j'avais tout mis en numérique pour homogénéiser.

Mais vu que maintenant tu as des codes postaux avec lettres ça ne peut plus s'appliquer.

eric

Merci beaucoup !! C'est génial, ça fonctionne désormais grâce au format Texte !

J'ai effacé tout mon formatage de colonne dans la feuille annuaire puis mis celui au format Texte. De même pour la feuille Départements et Régions, dans laquelle j'ai dû retaper manuellement les n° de département 01, 02, 03, etc. et inclure dans la plage de données les codes CH, QC, IT, etc. avec leur correspondance Suisse, ....

La formule finale ne contient donc plus le "+0" et j'ai dû ajouter la mention FAUX car il me prenait la Belgique pour les DOM-TOM... (je ne me permettrait pas de blague là dessus, j'ai l'impression qu'il y a une grosse communauté belge par ici... )

La formule finale est donc =SI(A2="";"";RECHERCHEV(A2;Régions;3;FAUX))

Voici le fichier test en pj.

632annuaire-test.xlsx (538.39 Ko)

Un très grand merci pour votre aide précieuse ! Le post est résolu !

Rechercher des sujets similaires à "recherchev correspondre codes postaux departements regions"