Récupérer valeur entre 2 séparateurs

Résolu
florew -  
 florew -
Bonjour,

Je n'arrive pas à récuperer une valeur située entre 2 séparateurs "," (virgule) dans mon fichier .csv. J'ai essayé avec DROITE et GAUCHE mais ces fonctions ne prennent que les premières qu'elles rencontrent.

Voici ma chaine de caractère : AB.PA,4/26/2010,12.98,12.98,12.2,12.68,62800

La valeur que je souhaiterais récupérer est 12.68, en 6 sixième position en partant de gauche.

Merci beaucoup pour votre aide
Florew

2 réponses

  1. tontong Messages postés 2575 Date d'inscription   Statut Membre Dernière intervention   1 064
     
    Bonjour,
    Tentative d'explication:
    SUBSTITUE(A1;",";"£";6) remplace la sixième virgule par £
    CHERCHE("£";SUBSTITUE(A1;",";"£";6))-1 renvoie la position de £ dans A1 modifié: ici 39-1=38
    =CHERCHE("£";SUBSTITUE(A1;",";"£";5))+1 renvoie la position de £ dans A1 modifié: ici 33+1=34
    =GAUCHE(A1;CHERCHE("£";SUBSTITUE(A1;",";"£";6))-1) renvoie les 38 caractères de gauche.
    =STXT(....;34;99) renvoie 99 caractères à partir du 34ème dans A1 réduit à 38 caractères.
    La source de cette formule est le site de Jacques Boisgontier.

    La date que vous récupérez n'est pas valide pour Excel " français", elle se présente sous la forme mm/jj/aaaa.
    1
    1. florew
       
      Merci pour ces précisions.
      0
  2. Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 453
     
    Bonsoir
    essayez avec pur une valeur en B5 :
    =STXT(SUBSTITUE(SUBSTITUE(B5;",";"$";5);",";"_";5);TROUVE("$";SUBSTITUE(SUBSTITUE(B5;",";"$";5);",";"_";5);1)+1;NBCAR(SUBSTITUE(SUBSTITUE(B5;",";"$";5);",";"_";5))-TROUVE("_";SUBSTITUE(SUBSTITUE(B5;",";"$";5);",";"_";5);1))
    attention:
    il est possible qu'un copier coller depuis le message donne pas le no résultat

    Les signes utilisés dans substitue ( soit $ et _ ) ne doivent pas exister dans vos textes

    crdlmnt
    0
    1. florew
       
      Merci Vaucluse. Ca marche très bien :)
      0
    2. florew
       
      Opps. Il arrive que la longueur des champs change et certains caractères sont manquants lorsque ça arrive. Ou sont en trop, ça dépend. Vraiment dommage que MoreFunc ne marche pas avec Excel 2010.
      0
    3. tontong Messages postés 2575 Date d'inscription   Statut Membre Dernière intervention   1 064
       
      Bonsoir,
      Juste pour proposer un peu plus court mais un peu en retard:
      =STXT(GAUCHE(A1;CHERCHE("£";SUBSTITUE(A1;",";"£";6))-1);CHERCHE("£";SUBSTITUE(A1;",";"£";5))+1;99)
      0
    4. florew
       
      Alors là chapeau Tontong, j'ai beau modifier les champs à côté le résultat est toujours le bon :) j'ai pas regardé en détail le contenu de la formule encore, mais les "£" ils veulent dire quoi ? merci !
      0
    5. tontong Messages postés 2575 Date d'inscription   Statut Membre Dernière intervention   1 064
       
      Rien: c'est seulement un caractère qui a peu de chance d'être utilisé dans le texte.
      On pourrait prendre § ou ¤ ou µ etc.
      0