Extraction de valeur numériques

Bonjour,

Je me permet de vous solliciter car je n'arrive pas à extraire certaines valeurs de ma feuille Excel

Valeurs d'exemples

12 N

0.54 g/l

>1 g/l

Résultat souhaité :

12

0.54

>1

Mon problème : je souhaite extraire les valeurs sans les unités à partir d'une donnée format texte

J'arrive à extraire les données numériques simples mais lorsqu'il y a les caractères "<,>,-"

ça se complique car je n'ai pas le signe.

Auriez vous une formule simple pour faire le travail (compatible avec excel 2010 si possible)

ou faut il passer par une macro.

Vous remerciant par avance pour le temps que vous y consacreriez.

manchap

3 réponses

  1. Modérateur

    Bonjour,

    On pourrait couper le texte au premier blanc =STXT(A1;1;CHERCHE(" ";A1)-1)

    sachant que 0.54 n'est pas un numérique sur excel en français, et que >1 non plus


    0
    1. Bonsoir, merci pour votre réponse, oui c'est bien le problème que je rencontre des valeurs numériques simple il n'y pas de problème en revanche j'ai besoin d'impliquer 3 caractères non numériques. Concernant le séparateur décimal celui ci est converti automatiquement lors de l'importation des données.

      Je ne trouve pas de solutions pour avoir un résultat  numériques en incluant "<,>,-". Faut il peut-être une macros ? Si cela est possible en VB

      Cordialement

      0
      1. Modérateur

        < et > ne sont pas des indicateurs que l'on peut avoir dans une cellule avec une valeur numérique. Ils ne peuvent donc figurer que dans une chaine de caractère

        Le - oui est bien inclus dans dans une valeur numérique et si excel est paramétré en français, il faut convertir le point en virgule

        0
    2. Bonjour,

      Avec un bout de code en VBA

      https://www.cjoint.com/c/LLshjyXbhKk

      le code:

      Sub Extraction()
          Dim DerLig As Long, i As Long
          Application.ScreenUpdating = False
          DerLig = Range("A" & Rows.Count).End(xlUp).Row
          For i = 1 To DerLig
              With CreateObject("vbscript.regexp")
                  .Pattern = "([A-Z\; /])"
                  .IgnoreCase = True
                  .Global = True
                  Cells(i, "B") = .Replace(Cells(i, "A"), " ")
              End With
          Next i
      End Sub

      Cdlt

      0