Aide sur une formule

Résolu
sim10912 Messages postés 26 Statut Membre -  
kgigant Messages postés 223 Statut Membre -
Bonjour à tous,

J'habite en Belgique et souhaite classer un listing client par province (automatiquement bien sûr, sur base de leur code postal). Nous possédons des codes postaux à 4 chiffres (ex : 1020).

Voici la fonction que j'ai créé pour dénommer les provinces :
=SI(OU(GAUCHE(S7;2)=10;GAUCHE(S7;2)=11;GAUCHE(S7;2)=12);"Bruxelles";SI(OU(GAUCHE(S7;2)=13;GAUCHE(S7;2)=14);"Brabant Wallon";SI(OU(GAUCHE(S7;2)=15;GAUCHE(S7;2)=16;GAUCHE(S7;2)=17;GAUCHE(S7;2)=18;GAUCHE(S7;2)=19;GAUCHE(S7;2)=30;GAUCHE(S7;2)=31;GAUCHE(S7;2)=32;GAUCHE(S7;2)=33;GAUCHE(S7;2)=34);"Brabant Flamand";SI(GAUCHE(S7;1)=2;"Anvers";SI(OU(GAUCHE(S7;2)=35;GAUCHE(S7;2)=36;GAUCHE(S7;2)=37;GAUCHE(S7;2)=38;GAUCHE(S7;2)=39);"Limbourg";SI(GAUCHE(S7;1)=4;"Liège";SI(GAUCHE(S7;1)=5;"Namur";SI(OU(GAUCHE(S7;2)=60;GAUCHE(S7;2)=61;GAUCHE(S7;2)=62;GAUCHE(S7;2)=63;GAUCHE(S7;2)=64;GAUCHE(S7;2)=65;GAUCHE(S7;1)=7);"Hainaut";SI(OU(GAUCHE(S7;2)=66;GAUCHE(S7;2)=67;GAUCHE(S7;2)=68;GAUCHE(S7;2)=69);"Luxembourg";SI(GAUCHE(S7;1)=8;"Flandre Occidentale";SI(GAUCHE(S7;1)=9;"Flandre Orientale";"Autres")))))))))))


Mais, lorsque la fameuse case "S7" contient "1020", il me renvoie "Autres" et non "Bruxelles" comme je le désire...

J'ai alors fait un test + simple :
=SI(GAUCHE(S7;2)=10);"Bruxelles";"Autres"

Mais il me renvoie toujours "Autres"...

Je ne vois pas où est mon erreur... Il existe sûrement une autre formule que "gauche", mais je ne connais pas...

Qui sait m'aider svp?????????

Merci d'avance!!!

4 réponses

  1. Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 453
     
    Bonjour
    dans toutes vos conditions, le code GAUCHE(cell;1)ou 2° renvoie du texte.
    Il est donc possible que Excel ait du mal avec un gauche qui se termine par 0
    essayez:, au plus simple, de placer la valeur la valeur 10 entre guillemets:
    =SI(GAUCHE(S7;2)="10";"Bruxelles";....
    et par prudence si ça fonctionne faites le pour toute votre formule.
    Sinon une autre option:
    =SI(GAUCHE(S7;2)1=10;"Bruxelles";....
    La première solution transforme la valeur cherchée en texte, la seconde numérise le résultat de GAUCHE(...
    crdlmnt
    1
    1. sim10912 Messages postés 26 Statut Membre
       
      Merci pour votre aide Vaucluse!
      De fait, grâce au format "10" sur toute la formule, cela fonctionne parfaitement!

      Pour répondre à Kgigant, j'aurais pu le faire par recherchev, mais
      1) je voulais trouver le résultat via un =si
      2) et le problème restait le même, étant donné que mon "si(ou))" était complet... Une recherchev simplifie, mais une fois que la fonction est écrite, cela ne sert a rien d'entamer une recherchev ;)

      Merci à tous!
      0
  2. kgigant Messages postés 223 Statut Membre 9
     
    utilise la fonction recherchev !!!!! Associe chaque code postale à une région dans un tableau et utilise cette formule
    0
  3. Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 453
     
    Bonjour kgigant
    Je crois que ça ne changera rien si ça ne fonctionne pas avec une condition. C'est un problème de format, voir mon message ci dessous
    Par contre, c'est vrai que la proposition de faire un tableauu avec les valeurs cherchées et les noms et d'utiliser la recherche des codes devrait simplifier la formule
    crdlmnt-
    0
  4. kgigant Messages postés 223 Statut Membre 9
     
    Bien reçu !

    crdlmnt
    0