Extraction de plusieurs mots (ou chaine de caractere) d'une même cellule

Diket

XLDnaute Nouveau
Bonjour,

Je rencontre un problème, j'ai dans une colonne une liste avec certaines cellule ou j'ai :
PTD*****-MAJ***** PTD*****-REP***** Dans la même cellule.

Les * sont des chiffres, qui changent suivant la ligne sur laquelle on se trouve.
Ce que je recherche à faire c'est extraitre les deux chaînes de caractère sans le PT du début et pouvoir les avoir séparées par / par exemple dans une autre cellule.
J'ai essayé avec les fonctions STXT et CHERCHE, seulement cette dernière s'arrête à la première chaîne de caractère.
Je voudrais pouvoir extraire les chaînes qui m'intéresse également si j'ai
PTD : PTD*****-MAJ***** et que je ne veux pas ce qu'il y a avant PTD*****-MAJ*****.
Car quand je lance CHERCHE celle ci me sort PTD : PTD***

Je vous remercie de votre aide.
Si c'est encore trop imprécis je reste à votre disposition pour éclaircir un peu plus.
 

Diket

XLDnaute Nouveau
Re : Extraction de plusieurs mots (ou chaine de caractere) d'une même cellule

Bonjour,

Oui en quelque sorte mais en jouant sur les caractères.
Se serait plus de la forme : D*****-MAJ*****/D*****-REP*****

Car au final j'ai une fonction qui cherche dans toute la colonne ce format et qui le retranscrit dans une nouvelle colonne.
Quand il n'y a que se que je cherche c'est simple mais des qu'il y a une phrase ou plusieurs donnees (cas ci dessus) je n'y arrive pas.

Merci pour votre aide
 

Diket

XLDnaute Nouveau
Re : Extraction de plusieurs mots (ou chaine de caractere) d'une même cellule

Bonjour,

C'est ce que je fais, cellule par cellule sur toute ma colonne.
Mais lorsque dans ma cellule je n'est que D*****-MAJ***** ou l'autre, c'est parfait car c'est ce que je cherche.
Mais quand j'ai une phrase ou deux chaînes avec des numéros différent, je n'est que le premier car la fonction Cherche s'arrête au premier.

Le dossier est un peu confidentiel mais je vais essayé d'en faire un nouveau avec des données libre d'accès.

Merci
 

CISCO

XLDnaute Barbatruc
Re : Extraction de plusieurs mots (ou chaine de caractere) d'une même cellule

Bonjour

Et voui, cela serait tellement plus pratique pour nous avec une fichier exemple, même avec seulement 5 ou 6 lignes représentatives des diverses possibilités...

@ plus
 

Diket

XLDnaute Nouveau
Re : Extraction de plusieurs mots (ou chaine de caractere) d'une même cellule

Voila mon Fichier avec des exemples que je rencontre le plus.
Comme je l'ai dis, la première ligne est ce que je cherche donc quand j'ai que ça dans ma cellule c'est parfait.
Par contre quand c'est comme les autres lignes je n'arrive pas a avoir ce que je cherche avec les foncions CHERCHE ou autre.

Encore Merci
 

Pièces jointes

  • Exemple extraction.xls
    16.5 KB · Affichages: 81
  • Exemple extraction.xls
    16.5 KB · Affichages: 72
  • Exemple extraction.xls
    16.5 KB · Affichages: 71

Diket

XLDnaute Nouveau
Re : Extraction de plusieurs mots (ou chaine de caractere) d'une même cellule

Voila le fichier avec ce que je voudrais avoir comme résultat.
 

Pièces jointes

  • Exemple extraction.xls
    20.5 KB · Affichages: 66
  • Exemple extraction.xls
    20.5 KB · Affichages: 69
  • Exemple extraction.xls
    20.5 KB · Affichages: 65

david84

XLDnaute Barbatruc
Re : Extraction de plusieurs mots (ou chaine de caractere) d'une même cellule

Bonsoir,
ci-joint une fonction personnalisée utilisant une expression rationnelle :
Code:
Function ExtraireChaine(c As String) As String
Set obj = CreateObject("vbscript.regexp")
obj.Global = True
obj.Pattern = "(D\d+\s*-*(?:MAJ|REP)\d+)"
Set a = obj.Execute(c)
If a.Count > 0 Then
    For i = 0 To a.Count - 1
        ExtraireChaine = ExtraireChaine & a(i) & "/"
    Next i
End If
ExtraireChaine = Left(ExtraireChaine, Len(ExtraireChaine) - 1)
End Function
A+
 

Diket

XLDnaute Nouveau
Re : Extraction de plusieurs mots (ou chaine de caractere) d'une même cellule

Merci pour aide. La fonction m'est plus utile car je ne sais pas ce que j'aurai comme phrase dans la cellule.
Mais j'ai essayé la fonction et ça marche super bien! Merci beaucoup!

J'aurais juste une question, c'est que du bonus la fonction c'est déjà très bien. Mais si j'ai une cellule avec les chiffres qui sont après le D (du D*****) et que je veuille faire un Concatener avec "D" ; ma cellule de chiffre ; "-"; puis l'extraction avec la fonction, c'est possible en faisant la même boucle? Car j'ai essayé comme j'ai dis mais sans surprise j'ai D*****-D*****-MAJ*****/D*****-MAJ***** lorsque j'en ai deux que la même ligne. En gros avoir la même chose que la fonction donne mais que la partie avec le D**** soit fait à partir de ma cellule et ce pour les différentes chaînes.
C'est juste pour affiner la chose car les chiffres dans ma cellule sont plus sur que ceux que j'extrait.

Mais comme je disai c'est que du bonus, vous m'avez vraiment aidé merci!
 

david84

XLDnaute Barbatruc
Re : Extraction de plusieurs mots (ou chaine de caractere) d'une même cellule

Re
Une fois de plus, place manuellement les résultats attendus sur le fichier. Il sera ainsi plus facile de comprendre ton attente et tes explications.
A+
 

Discussions similaires

Statistiques des forums

Discussions
312 215
Messages
2 086 330
Membres
103 188
dernier inscrit
evebar