Extraction de texte dans une cellule

Bonjour à tous,

Je me heurte à un problème d'extraction de texte dans une cellule. Le document sur lequel je travaille contient une colonne fourre-tout dont les cellules se présentent sous la forme suivante :

13/02/2013: [Auderghem];Incident assigné à Région Bruxelles-Capitale (Bruxelles Mobilité);25/02/2013: [Auderghem];Incident validé par Auderghem;25/02/2013: [Auderghem];Incident clôturé par Auderghem

L'information qui m'intéresse est le bloc d'infos qui figure en dernière position : 25/02/2013: [Auderghem];Incident clôturé par Auderghem.

---> Autrement dit, toutes les chaînes de caractères qui se situent entre le dernier caractère dans la cellule et le 2e point-virgule en partant de la fin. <----

Je sens qu'il est possible d'extraire le texte par une combinaison de =DROITE et RECHERCHE, mais je ne parviens pas à créer une formule satisfaisante.

Si quelqu'un a une idée, je suis preneur !

18exemple.xlsx (8.37 Ko)

Bonjour,

Voilà un essai avec 2 cas où ça fonctionne pas.

Je continue à regarder si je peux améliorer ça en attendant je te post le fichier si ça peut te mettre sur la piste d'une idée.

Cordialement

19exemple.xlsx (8.83 Ko)

En réfléchissant tout haut, il faut donc que je capture un nombre X de caractères en partant de la fin.

---> DROITE(texte;X)

X doit être égal au nombre de caractères compris entre le dernier de la cellule et le 2e ";" en partant de la fin. C'est cela que j'ai du mal à formaliser.

Le problème c est que le texte que tu souhaites extraire ne se situe pas derrière un caractère unique c est effectivement le 2nd point virgule.

Cordialement.

salut Bigdaddy,

Je te remercie pour ta formule, qui m'a l'air sur la bonne piste. Je l'examine tout de suite.

Bien à toi,

Ah, hélas elle ne fonctionne pas dans le cas où la cellule contient ceci :

02/04/2013: [Saint-Gilles];Incident assigné à Région Bruxelles-Capitale (Bruxelles Mobilité);02/04/2013: [Saint-Gilles];Incident validé par Saint-Gilles;02/04/2013: [Région Bruxelles-Capitale (Bruxelles Mobilité)];Incident assigné à Région Bruxelles-Capitale (Bruxelles Mobilité);22/04/2013: [Région Bruxelles-Capitale (Bruxelles Mobilité)];Incident clôturé par Région Bruxelles-Capitale (Bruxelles Mobilité)

Réponse renvoyée :

02/04/2013: [Région Bruxelles-Capitale (Bruxelles Mobilité)];Incident assigné à Région Bruxelles-Capitale (Bruxelles Mobilité);22/04/2013: [Région Bruxelles-Capitale

Dans ce cas-là, elle récupère à la fois trop d'informations (le "assigné") et trop peu (on ne sait pas si l'incident a été clôturé).

je me demande si ce ne serait pas plus simple de récupérer l'info en deux parties, chacune dans une colonne à part : 1° La dernière date indiquée (dans ce cas-ci "22/04/2013") ; 2° la dernière phrase ("Incident clôturé par Région Bruxelles-Capitale (Bruxelles Mobilité)")

Bonjour

Ci joint une procédure "manuelle" à suivre en utilisant le bouton Convertir de la barre d'outils données

1) Sélection colonne A=> Convertir et choisir le séparateur ; (point virgule)

Le contenu des cellules de la colonne A se répartissent en autant de cellules que nécessaires sauf celles avec date: lieu

2) Traiter toutes les colonnes avec ces deux infos une après l'autre de la manière suivante

sélectionner la colonne==> Convertir ==> séparateur : ( deux points)==> remplacer existant

3) a droite de la dernière colonne avec des données, rentrer la formule suivante :

=DECALER(A1;0;NBVAL(A1:H1)-2) Adapter la taille en modifiant la zone "A1:xxxxx1)

recopier vers le bas et le tour semble être joué

Cette procédure est automatisable

Cordialement

FINDRH

Bonjour FINDRH,

Merci pour cette proposition, mais elle ne peut s'appliquer au cas qui m'occupe. Le fichier en question contient 16000 lignes et si j'applique "Convertir", les colonnes s’éparpilleront jusqu'en AA ! Il est beaucoup trop risqué d'utiliser une solution manuelle dont le résultat sera ensuite difficilement vérifiable.

Par ailleurs, cette solution fournit seulement une date et le nom d'une ville entre crochets, alors qu'il me faut savoir aussi à quoi se rapporte cette date (incident clôturé ou autre chose ?)


Quoique, ça pourrait marcher... (voir fichier, colonnes AA et AB)

Si personne n'a de solution plus élégante, je crois que je vais utiliser celle-là.

Merci encore !

9exemple2.xlsx (10.59 Ko)

Bonjour

Ci joint une proposition automatisée

teste avec la feuille 2 ==> Faire Ctrl Maj T pour lancer la macro

puis

Copier ta base sur ce classeur

Faire Ctrl Maj T pour lancer la macro

A priori ça marche

Cordialement

FINDRH

18extract-txt.xlsm (26.04 Ko)
Rechercher des sujets similaires à "extraction texte"