Extraire une chaine de caractères d'une cellule
Résolu/Fermé
FiberIDEA
Messages postés
2
Date d'inscription
vendredi 11 octobre 2013
Statut
Membre
Dernière intervention
12 octobre 2013
-
11 oct. 2013 à 19:06
FiberIDEA Messages postés 2 Date d'inscription vendredi 11 octobre 2013 Statut Membre Dernière intervention 12 octobre 2013 - 12 oct. 2013 à 16:22
FiberIDEA Messages postés 2 Date d'inscription vendredi 11 octobre 2013 Statut Membre Dernière intervention 12 octobre 2013 - 12 oct. 2013 à 16:22
A voir également:
- Excel expression régulière
- Extraire une video youtube - Guide
- Caractères ascii - Guide
- Aller à la ligne dans une cellule excel - Guide
- Extraire son d'une video - Guide
- Caractères spéciaux clavier azerty - Guide
4 réponses
Atropa
Messages postés
1940
Date d'inscription
mercredi 25 juin 2008
Statut
Membre
Dernière intervention
11 mai 2014
274
11 oct. 2013 à 19:50
11 oct. 2013 à 19:50
Bonsoir,
avec une expression régulière et un peu de vba :
VBA
et ensuite pour ta cellule cible (si B6 est ta cellule source par exemple)
=extract(B6;"A[0-9]{4}")
si tu comptes utiliser ça uniquement avec ce pattern tu peux utiliser ça :
=extract(B6)
mais la première fonction est plus souple
avec une expression régulière et un peu de vba :
VBA
Function extract(txt As String, pattern As String) As String
With CreateObject("VBScript.RegExp")
.pattern = pattern
.IgnoreCase = True
extract = .Execute(txt)(0)
End With
End Function
et ensuite pour ta cellule cible (si B6 est ta cellule source par exemple)
=extract(B6;"A[0-9]{4}")
si tu comptes utiliser ça uniquement avec ce pattern tu peux utiliser ça :
Function extract(txt As String) As Stringet ça dans ta cellule cible
With CreateObject("VBScript.RegExp")
.pattern = "A[0-9]{4}"
.IgnoreCase = True
extract = .Execute(txt)(0)
End With
End Function
=extract(B6)
mais la première fonction est plus souple
PHILOU10120
Messages postés
6393
Date d'inscription
lundi 16 avril 2012
Statut
Contributeur
Dernière intervention
9 octobre 2024
810
11 oct. 2013 à 19:14
11 oct. 2013 à 19:14
Bonjour
Avec cette formule pour mon exemple les données sont en A7
=DROITE(GAUCHE(A7;CHERCHE("-";A7;1)-1);5)
Avec cette formule pour mon exemple les données sont en A7
=DROITE(GAUCHE(A7;CHERCHE("-";A7;1)-1);5)
Vaucluse
Messages postés
26496
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
1 avril 2022
6 414
11 oct. 2013 à 19:33
11 oct. 2013 à 19:33
Bonsoir
avec :
=STXT(A1;TROUVE("A";A1);5)
crdlmnt
avec :
=STXT(A1;TROUVE("A";A1);5)
crdlmnt
FiberIDEA
Messages postés
2
Date d'inscription
vendredi 11 octobre 2013
Statut
Membre
Dernière intervention
12 octobre 2013
12 oct. 2013 à 16:22
12 oct. 2013 à 16:22
Merci à tous, c'est nickel.
J'ai utilisé finalement la formule de Vaucluse qui conserve le "A" dans la réponse
Cdlt
J'ai utilisé finalement la formule de Vaucluse qui conserve le "A" dans la réponse
Cdlt
11 oct. 2013 à 19:55
11 oct. 2013 à 20:08
peut être un peu beaucoup pour pas grand chose, non? et de plus pas à la portée du commun des mortels.
crdlmnt
11 oct. 2013 à 20:18
par exemple si la lettre A n'est pas dans toutes les références ça évite plein de manipulation inutile
Je n'ai jamais vraiment utilisé excel et j'ai été étonné de voir qu'il n'y ai pas de fonction expression régulière directement dedans.
mais sinon ça ne fait qu'une petite fonction à ajouter et c'est tellement plus confortable que des fonctions imbriquées.
En plus ça pourra lui servir à l'avenir de connaitre ça. Ca simplifie beaucoup de chose.