Excel: extraire des données
gege25
-
michel_m Messages postés 18903 Date d'inscription Statut Contributeur Dernière intervention -
michel_m Messages postés 18903 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je galère un peu à trouver une solution au problème suivant, j'aimerai extraire de la chaine suivante la note attribué à DEC qui est égale à 16.5 dans une nouvelle colonne:
BD : 16;DEC : 16;JMQ : 15;JR : 16,5;JS : 89-90;NM : 88-90;RG : 16;RP : 87-88;WS : 87-90
J'utilise la formule suivante:
=STXT(A2;TROUVE($B$1;A2)+NBCAR($B$1);TROUVE(";";A2))
Seulement, je n'ai pas trouver comment extraire le nombre de caractère équivalent à la note car sa longueur de caractère varie dans les lignes précédentes :)
En gros je cherche à extraire la chaine de caractère allant de DEC : à ; sans avoir à convertir les données. Une idée de comment je pourrais régler ca ?
Je galère un peu à trouver une solution au problème suivant, j'aimerai extraire de la chaine suivante la note attribué à DEC qui est égale à 16.5 dans une nouvelle colonne:
BD : 16;DEC : 16;JMQ : 15;JR : 16,5;JS : 89-90;NM : 88-90;RG : 16;RP : 87-88;WS : 87-90
J'utilise la formule suivante:
=STXT(A2;TROUVE($B$1;A2)+NBCAR($B$1);TROUVE(";";A2))
Seulement, je n'ai pas trouver comment extraire le nombre de caractère équivalent à la note car sa longueur de caractère varie dans les lignes précédentes :)
En gros je cherche à extraire la chaine de caractère allant de DEC : à ; sans avoir à convertir les données. Une idée de comment je pourrais régler ca ?
A voir également:
- Excel: extraire des données
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Si ou excel - Guide
- Déplacer colonne excel - Guide
- Excel trier par ordre croissant chiffre - Guide
1 réponse
Bonjour,
puisque tu es dans le forum programmation, proposition avec une fonction personnalisée
on peut aussi trouver la réponse par formule mais c'est assez prise de t^te et c'est lundi.... ;o)
Michel
puisque tu es dans le forum programmation, proposition avec une fonction personnalisée
Function extraire_note(texto As String, criter As String) As Double
Dim T_pntvirg, Cptr As Integer
T_pntvirg = Split(texto, ";")
For Cptr = 0 To UBound(T_pntvirg)
If T_pntvirg(Cptr) Like "*" & criter & "*" Then
extraire_note = Split(T_pntvirg(Cptr), " : ")(1)
Exit Function
End If
Next
End Function
on peut aussi trouver la réponse par formule mais c'est assez prise de t^te et c'est lundi.... ;o)
Michel