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 :

Extraction de chiffres d'une chaîne, fonction cherche (search) incomprise


Sujet :

Excel

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Avril 2019
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Avril 2019
    Messages : 3
    Points : 1
    Points
    1
    Par défaut Extraction de chiffres d'une chaîne, fonction cherche (search) incomprise
    Bonjour à tous,

    Je bricole pour extraire des chiffres de chaînes de caractères de longueurs et de contenus très variables.
    En fouillant sur le net je trouve des solutions fonctionnelles utilisant des formules comme :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =MIN(SI(ESTNUM(CHERCHE({0;1;2;3;4;5;6;7;8;9};A1));CHERCHE({0;1;2;3;4;5;6;7;8;9};A1);""))
    en supposant que ma chaîne de caractères soit en cellule A1.

    Ca marche mais je ne comprends pas comment et j'ai horreur de ça. Dans le coup je suis en train de décomposer la formule et bloque dès le départ sur le fonctionnement de CHERCHE.

    Mon fichier de travail et mes chaînes de caractères test (je bosse dans les fruits et légumes ;-)) :
    A1 : Epinards Sud Est 1 Kg
    A2 : Kiwi Cal 36/39 Corse 10 Kg Conv
    A3 : Kiwi Cal 36/39 Corse 12 Kg Conv

    Je teste la formule hyper basique suivante dans chaque cas :
    =CHERCHE({0;1;2;3;4;5;6;7;8;9};A1)
    (puis idem avec les cellules A2 et A3 référencées dans cette même formule toute simple).

    Résultats de la formule :
    1er cas : renvoie #VALEUR!
    2ème cas : renvoie 23
    3ème cas : renvoie #VALEUR!

    Questions :
    - cette formule doit-elle être saisie en mode matriciel (ctrl maj entrée) ou pas ? Ça ne change rien aux résultats et à mon incompréhension des résultats.
    - pourquoi la position du 1 ne m'est-elle pas renvoyée dans le 1er cas ?
    - pourquoi tous les premiers chiffres sont-ils zappés, exceptés le 0, dans le 2ème cas ? La matrice de recherche est balayée dans l'ordre ?
    - j'ai dégagé le 0 dans le 3ème cas et l'ai remplacé par un 2, de nouveau erreur, ce qui tendrait à confirmer l'hypothèse ci-dessus...

    Bref je ne comprends pas ce que fait Excel sur ce coup, vos lumières me seraient bien précieuses.
    PS : la formule =MIN(SI(ESTNUM(CHERCHE({0;1;2;3;4;5;6;7;8;9};A1));CHERCHE({0;1;2;3;4;5;6;7;8;9};A1);"")) me renvoie 18 pour la chaîne "Epinards Sud Est 1 Kg", ce qui est correct ! Donc elle marche globalement ! Grrr je ne comprends pas, je déteste ça...

    Merci infiniment,
    JB

  2. #2
    Nouveau Candidat au Club
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Avril 2019
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Avril 2019
    Messages : 3
    Points : 1
    Points
    1
    Par défaut Précision
    ... et je cherche une solution en fonctions, pas en VBA (pour le moment du moins).

  3. #3
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 904
    Points : 10 168
    Points
    10 168
    Billets dans le blog
    36
    À ma connaissance, le seul personnage qui a été diagnostiqué comme étant allergique au mot effort. c'est Gaston Lagaffe.

    Ô Saint Excel, Grand Dieu de l'Inutile.

    Excel n'a jamais été, n'est pas et ne sera jamais un SGBD, c'est pour cela que Excel s'appelle Excel et ne s'appelle pas Access junior.

  4. #4
    Nouveau Candidat au Club
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Avril 2019
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Avril 2019
    Messages : 3
    Points : 1
    Points
    1
    Par défaut Si on pouvait juste m'éclairer sur la fonction CHERCHE svp...
    Merci du retour et des liens fournis, je vais regarder ca avec attention.
    Je ne demande pas une solution clé en main, j'ai vu que diverses solutions tout à fait efficaces étaient listées à gauche et à droite.

    Je cherchais juste à comprendre ici le fonctionnement de la fonction CHERCHE dans les 3 cas de figure pré-cités.

    Concernant l'usage d'Excel, c'est limité mais ça reste grand public et utilisable par tous (j'automatise quelques trucs dans mon entreprise sans être développeur car il n'y en a pas de toute façon). Pas au top mais plus efficace que du papier / crayon en tout état de cause.

    Merci pour votre aide !
    JB

  5. #5
    Expert éminent sénior

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 420
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 420
    Points : 16 264
    Points
    16 264
    Par défaut
    Bonjour

    CHERCHE recherche un caractère ou un groupe de caractères dans une chaîne

    ESTNUM vérifie si la recherche aboutit (elle renvoie la position de ce qui est cherché dans la chaîne) ou non

    {0;1;2;3;4;5;6;7;8;9} permet de chercher tout chiffre et la fonction reverrait donc normalement la position du premier chiffre trouvé ou une chaîne vide si aucun chiffre présent

    Cependant la recherche s'effectue dans l'ordre des chiffre cités et peux trouver plusieurs concordances, or une cellule ne peut retranscrire plusieurs résultats.

    MIN permet de récupérer la première occurrence et donc d'éviter une erreur due à la multitude de réponses
    Chris
    PowerQuery existe depuis plus de 13 ans, est totalement intégré à Excel 2016 &+. Utilisez-le !

    Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson.
    Confucius

    ----------------------------------------------------------------------------------------------
    En cas de résolution, n'hésitez pas cliquer sur c'est toujours apprécié...

Discussions similaires

  1. Extraction de chiffres d'une chaîne
    Par olive_le_malin dans le forum C++
    Réponses: 9
    Dernier message: 12/03/2007, 15h16
  2. Séparation des lettres et des chiffres d'une chaîne
    Par camoa dans le forum Assembleur
    Réponses: 2
    Dernier message: 24/01/2007, 17h46
  3. Réponses: 4
    Dernier message: 09/11/2006, 00h32
  4. [Tableaux] Extraire les chiffres dans une chaîne
    Par Digiduck dans le forum Langage
    Réponses: 8
    Dernier message: 16/08/2006, 14h33
  5. Extraction de variables dans une chaîne
    Par Spack dans le forum Général Python
    Réponses: 6
    Dernier message: 20/05/2006, 19h42

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