Recherche de données dans une cellule

bonjour ,

j'ai besoin de récupérer automatiquement des informations de type texte qui sont indiqué dans un nom de fichier : on cherche la valeur après X , après Y et après S

ce sont des valeurs de coordonnées X, Y et numéro du Site S que l'on devra mettre dans des cellules différentes .

nom du fichier Valeur X Valeur Y numéro Site

16-04-26_11-0432C_Inc=G_X200Y200_S42.tif

16-04-26_11-0432C_Inc=G_X340Y200_S44.tif

Merci de bien vouloir m'aider

Sandrine

9exo-texte.zip (4.54 Ko)

Bonjour,

Une fonction personnalisée :

Function EXTRACTSXY(tx As String)
    Dim sxy(2), rech, Ltx%, h%, i%
    Application.Volatile
    rech = Split("S X Y"): Ltx = Len(tx)
    For i = 0 To 2
        h = InStr(tx, rech(i))
        If h > 0 Then sxy(i) = Val(Right(tx, Ltx - h))
    Next i
    EXTRACTSXY = sxy
End Function

La fonction est matricielle et renvoie les 3 valeurs demandées simultanément.

Exemple d'utilisation :

  • On sélectionne la plage B3:D3.
  • On tape la formule : =EXTRACTSXY(A3)
  • On valide par la combinaison de touches : Ctrl+Maj+Entrée
  • La formule s'entoure d'accolades (indiquant qu'elle est matricielle) et les résultats apparaissent dans les 3 cellules sélectionnées au départ.

Cordialement.

Rechercher des sujets similaires à "recherche donnees"