IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Excel Discussion :

Mise en forme d'une adresse quand elle contient une des rues contenues dans une liste [XL-2016]


Sujet :

Excel

  1. #1
    Candidat au Club
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Décembre 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2014
    Messages : 4
    Points : 3
    Points
    3
    Par défaut Mise en forme d'une adresse quand elle contient une des rues contenues dans une liste
    Bonjour,
    Je suis confronté au problème suivant :
    - Une base de données d'adresses (par exemple 500 lignes)
    - Une liste d'une dizaine de nom de rue

    Comment appliquer un fond de couleur à toutes les adresses contenant l'un des noms de rue de la liste.

    Voir exemple dans le classeur joint.

    Merci pour votre aide
    Thierry
    Fichiers attachés Fichiers attachés

  2. #2
    Membre émérite Avatar de Zekraoui_Jakani
    Homme Profil pro
    Inscrit en
    Novembre 2013
    Messages
    1 671
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1 671
    Points : 2 491
    Points
    2 491
    Par défaut
    Avez-vous essayé le format conditionnel (voir ruban) ?

  3. #3
    Candidat au Club
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Décembre 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2014
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    Oui, mais cette mise en forme conditionnelle nécessite à mon avis de passer par une formule (peut-être matricielle) mais je ne trouve pas l'astuce.

  4. #4
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Avec une mise en forme conditionnelle utilisant formule qui combine les fonction SIERREUR() et CHERCHE().

  5. #5
    Membre éprouvé Avatar de excfl
    Profil pro
    Inscrit en
    Octobre 2012
    Messages
    690
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2012
    Messages : 690
    Points : 1 250
    Points
    1 250
    Par défaut
    Bonjour le forum,

    Présenter la liste des rues comme suit :

    Nom : Noms.png
Affichages : 383
Taille : 8,8 Ko
    MFC :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =OU(NB.SI($E1;$A$2)=1;NB.SI($E1;$A$3)=1;NB.SI($E1;$A$4)=1;NB.SI($E1;$A$5)=1;NB.SI($E1;$A$6)=1;NB.SI($E1;$A$8)=1)
    S'applique à : =$E:$E

  6. #6
    Membre expert

    Homme Profil pro
    Retraité
    Inscrit en
    Juin 2012
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2012
    Messages : 1 564
    Points : 3 554
    Points
    3 554
    Billets dans le blog
    1
    Par défaut
    Bonjour,
    Autre proposition :
    Redéfinir le nom LST_VAL par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =DECALER(Feuil1!$A$2;;;NBVAL(Feuil1!$A:$A)-1;1)
    Sélectionner la plage E2:E77 en gardant E2 comme cellule active et demander une nouvelle règle de MFC.
    Choisir : >> Utiliser une formule pour déterminer pour quelles cellules le format sera appliqué
    et écrire la formule :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SOMMEPROD(--ESTNUM(CHERCHE(LST_VAL;E2)))
    Choisir le format désiré.
    Cordialement
    Claude

  7. #7
    Candidat au Club
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Décembre 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2014
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    Alors là Monsieur Claude Respect et Chapeau bas !!!
    Cela fonctionne à merveille.

    Ok pour le nom de zone variable.
    Mais je coince un peu sur la matricielle. Quelle est l'utilité du -- en début de sommeprod ?

    Merci également à tous les autres contributeurs

    Thierry

  8. #8
    Membre expert

    Homme Profil pro
    Retraité
    Inscrit en
    Juin 2012
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2012
    Messages : 1 564
    Points : 3 554
    Points
    3 554
    Billets dans le blog
    1
    Par défaut
    Bonjour,
    Si la formule proposée est gênante pour la compréhension, on peut la remplacer par la formule matricielle :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SOMMEPROD(1 * ESTNUM(CHERCHE(LST_VAL;E2)))
    à valider par Ctrl + Maj + Entrée
    cellule désignant une cellule de la plage E2:E8, dans la formule { = SOMMEPROD(--ESTNUM(CHERCHE(LST_VAL;cellule))) } , ESTNUM(CHERCHE(LST_VAL;cellule)) renvoie une matrice de 6 valeurs logiques VRAI ou FAUX .
    En fait, si l'on est en E2 , ESTNUM(CHERCHE(LST_VAL;E2)) renvoie la matrice { FAUX ; FAUX ; FAUX ; FAUX ; FAUX ; FAUX }
    Si l'on est en E3, ESTNUM(CHERCHE(LST_VAL;E3)) renvoie la matrice { FAUX ; VRAI ; FAUX ; FAUX ; FAUX ; FAUX }
    Excel de lui même remplace ces valeurs logiques VRAI - FAUX par les valeurs numériques associées 1 - 0 pour effectuer les calculs demandés dans la formule, à une condition : qu'il y ait d'autres nombres qui interviennent dans la formule.
    C'est le cas pour le premier exemple de l'image ci-dessous.
    Nom : Vrai Faux.JPG
Affichages : 439
Taille : 26,5 Ko
    Mais dans le deuxième exemple où l'on demande la somme de cellules ne contenant que des VRAI - FAUX , Excel renvoie une somme égale à 0 qui ne donne pas le nombre de VRAI .
    Deux manières d'éviter ce problème :
    - Rajouter un nombre en multipliant la matrice par 1 (ligne 3 de l'image)
    - Ecrire en début de formule le symbole " -- " (ligne 4 de l'image) qui donne en quelque sorte à Excel l'ordre de convertir toutes les valeurs logiques en valeurs numériques.
    Cordialement
    Claude

  9. #9
    Candidat au Club
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Décembre 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2014
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    Merci Claude pour cette explication très claire.
    J'avais expérimenté depuis pour découvrir l'intérêt du --
    Habile façon de traduire les valeurs booléennes en numériques pris en compte par les sommes.

    Bien vu ! Merci beaucoup pour cet éclairage.
    Thierry

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Trouver le nom de la ville contenue dans une adresse
    Par ing_souka dans le forum Requêtes
    Réponses: 22
    Dernier message: 28/10/2014, 16h06
  2. Accéder à une adresse contenu dans une adresse
    Par Qooort dans le forum x86 32-bits / 64-bits
    Réponses: 4
    Dernier message: 22/06/2013, 00h33
  3. Réponses: 2
    Dernier message: 23/12/2012, 15h46
  4. Réponses: 6
    Dernier message: 08/04/2010, 10h32
  5. Réponses: 2
    Dernier message: 12/01/2004, 13h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo