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

Deski Discussion :

Extraire le premier ou le dernier mot d'une cellule


Sujet :

Deski

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 68
    Points : 40
    Points
    40
    Par défaut Extraire le premier ou le dernier mot d'une cellule
    Bonjour,

    Après maintes recherches dans le forum ainsi que dans le web, je reviens vous solliciter pour une formule BO dans DESKI qui consiste à extraire le premier mot d'une cellule puis le dernier mot sur deux colonnes distinctes.

    exemple:

    100 A 200
    A PARTIR DE 0
    A PARTIR DE 220
    220 A 3000
    80 A 140
    100 A 160
    ETC ...

    JE SOUHAITERAIS EXTRAIRE LES BORNE INFERIEUR ET SUPERIEUR
    (colonne A= 100 et colonne B= 200).

    Je vous remercie beaucoup de vos réponses et bonne fin de journée.

  2. #2
    Membre expérimenté Avatar de djam21
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Janvier 2006
    Messages
    843
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2006
    Messages : 843
    Points : 1 307
    Points
    1 307
    Par défaut
    Hello,

    Il te faudra utiliser les fonctions :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    chaîne Right(chaîne;nombre_de_car)
    et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    chaîne Left(chaîne;nombre_car)
    L'argument nombre de caractère devra identifier la position de ton espace.

    Exemple avec 100 A 200 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    = Gauche([Texte];Pos([Texte];" ")-1)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    = Droit(SousChaîne([Texte];Pos([Texte];" "))+1;longueur(SousChaîne([Texte];Pos([Texte];" "))+1));Pos([Texte];" ")-1)
    A+

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 68
    Points : 40
    Points
    40
    Par défaut
    Merci beaucoup Djam,

    Le code marche bien pour toutes les borne sauf pour la tranche 80 A 100.
    Quand j'essai d'extraire 100 avec le code : Droite(<Tranche de poids> ,Pos(<Tranche de poids> ," ")-1) au lieu d'avoir 100 j'obtient 00 alors que pour la tranche 80 A 140 le code fonctionne et j'ai la borne supérieure 140.

    Je ne comprends pas d'où vient le problème.

    Je te remercie encore une fois de ton aide

    Bonne fin de journée

  4. #4
    Rédacteur/Modérateur
    Avatar de NorocBzh
    Homme Profil pro
    Développeur décisionnel
    Inscrit en
    Juin 2008
    Messages
    834
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur décisionnel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 834
    Points : 1 265
    Points
    1 265
    Par défaut
    Le problème vient de la fonction pos() :

    Si le modèle apparaît plusieurs fois, Pos renvoie la position de la première occurrence.
    Avec ta formule :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Droite(<Tranche de poids> ,Pos(<Tranche de poids> ," ")-1)
    Le " " est trouvé plusieurs fois, et donc te renvoie un mauvais nombre pour ta borne de droite.

    Regarde la deuxième formule de Djam21, je ne l'ai pas regardée mais je pense que ça doit être la solution

  5. #5
    Membre expérimenté Avatar de djam21
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Janvier 2006
    Messages
    843
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2006
    Messages : 843
    Points : 1 307
    Points
    1 307
    Par défaut
    Hello,

    Si çà fonctionne pour "80 A 140" mais pas pour "80 A 100", çà semble bizarre...

  6. #6
    Rédacteur
    Avatar de Bruno2r
    Homme Profil pro
    Exploitation des données
    Inscrit en
    Décembre 2006
    Messages
    2 566
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Exploitation des données
    Secteur : Santé

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 566
    Points : 4 780
    Points
    4 780
    Par défaut
    Citation Envoyé par djam21 Voir le message
    Hello,

    Si çà fonctionne pour "80 A 140" mais pas pour "80 A 100", çà semble bizarre...
    Effectivement et je parierais que "80 A 100 " se termine par un espace ...
    Ah non ... on ne ramènerait pas les 00

    Peut être un espace après le 1 ???

  7. #7
    Membre expérimenté Avatar de djam21
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Janvier 2006
    Messages
    843
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2006
    Messages : 843
    Points : 1 307
    Points
    1 307
    Par défaut
    Après si thanmirt utilise comme il le dit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Droite(<Tranche de poids> ,Pos(<Tranche de poids> ," ")-1)
    Et qu'il obtient "00", il vient de trouver un bug dans BO...

    A+

  8. #8
    Rédacteur
    Avatar de Bruno2r
    Homme Profil pro
    Exploitation des données
    Inscrit en
    Décembre 2006
    Messages
    2 566
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Exploitation des données
    Secteur : Santé

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 566
    Points : 4 780
    Points
    4 780
    Par défaut
    Le plus sûr serait de se baser sur la présence du A encadré par des espaces pour déterminer les deux bornes qu'il relie.
    Les formules sont dans cette capture d'écran ci-dessous.
    Nom : ScreenHunter_BO001.jpg
Affichages : 1565
Taille : 45,0 Ko

  9. #9
    Rédacteur/Modérateur
    Avatar de NorocBzh
    Homme Profil pro
    Développeur décisionnel
    Inscrit en
    Juin 2008
    Messages
    834
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur décisionnel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 834
    Points : 1 265
    Points
    1 265
    Par défaut
    En rajoutant une condition si le "A" est au début du champ alors Borne inférieure=0 pour les lignes "A PARTIR DE"

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 68
    Points : 40
    Points
    40
    Par défaut
    Bonjour à tous,

    Désolé pour mon retour tardif. Je vous remrcie tous pour vos propositions. En effet ça pose toujours un problème pour ces tranches de 80 A 100 et 0 A 100 pour lesquelles je n'arrive pas avoir les bornes de droite. J'ai bien vérifié, il n'y a pas d'espace en plus (ça se trouve c'est un Bug).

    De mon côté, je considère que la problématique est Résolue car j'ai isoler ces 2 tranches par la fonction COMPARER et appliquer l'a bonne formule sur le reste.

    Toutefois cette problématique reste ouverte !!

    Merci encore une fois et bonne journée à tous

  11. #11
    Expert confirmé
    Avatar de doc malkovich
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Juillet 2008
    Messages
    1 884
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 884
    Points : 4 285
    Points
    4 285
    Billets dans le blog
    1
    Par défaut
    Hello,

    Je prends la problématique en route, mais le plus simple est d'avoir dans l'univers les 2 objets borne min et borne max ; au moins tout le monde pourrait les utiliser

  12. #12
    Rédacteur
    Avatar de Bruno2r
    Homme Profil pro
    Exploitation des données
    Inscrit en
    Décembre 2006
    Messages
    2 566
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Exploitation des données
    Secteur : Santé

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 566
    Points : 4 780
    Points
    4 780
    Par défaut
    Citation Envoyé par thanmirt Voir le message
    Bonjour à tous,

    Désolé pour mon retour tardif. Je vous remrcie tous pour vos propositions. En effet ça pose toujours un problème pour ces tranches de 80 A 100 et 0 A 100 pour lesquelles je n'arrive pas avoir les bornes de droite. J'ai bien vérifié, il n'y a pas d'espace en plus (ça se trouve c'est un Bug).

    De mon côté, je considère que la problématique est Résolue car j'ai isoler ces 2 tranches par la fonction COMPARER et appliquer l'a bonne formule sur le reste.

    Toutefois cette problématique reste ouverte !!

    Merci encore une fois et bonne journée à tous
    Je me demande si tu as lu les formules que je te proposais dans la capture d'écran


    Et en ajoutant le cas des "A partir de' proposé par NorocBzh le tour est joué non ?

    Citation Envoyé par NorocBzh Voir le message
    En rajoutant une condition si le "A" est au début du champ alors Borne inférieure=0 pour les lignes "A PARTIR DE"

  13. #13
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 68
    Points : 40
    Points
    40
    Par défaut
    Merci beaucoup Bruno2r,

    Je viens juste de voir les formules que tu m'as proposées en prenant le A avec les espaces (" A "), en effet ça marche à merveille et dans tous les cas.

    Je te remecie encore une fois.


    Bonne journée

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

Discussions similaires

  1. Réponses: 17
    Dernier message: 24/04/2016, 23h20
  2. [XL-2007] extraction 1er/dernier mot d'une cellule
    Par cedinfo17 dans le forum Excel
    Réponses: 4
    Dernier message: 28/08/2011, 04h07
  3. Extraire le dernier mot d'une chaîne en bash
    Par oranoutan dans le forum Linux
    Réponses: 2
    Dernier message: 16/05/2010, 22h47
  4. Est-il possible de connaître le dernier mot d'une div ?
    Par ShinJava dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 25/04/2007, 18h30
  5. Extraire les deux dernieres lettres d'une cellule
    Par SybVicious dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 03/09/2006, 11h54

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