Extraire chaine de caracteres dans UNE COLONNE NON FILTRÉE
fredcanada
Messages postés
10
Date d'inscription
Statut
Membre
Dernière intervention
-
fredcanada Messages postés 10 Date d'inscription Statut Membre Dernière intervention -
fredcanada Messages postés 10 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai vraiment besoin d'aide :(
J'ai une liste de plus de 7 000 lignes avec des informations très divers et je dois simplement aller chercher dans toutes la liste des informations.
Ex : Dans la colonne A
Dir. de comptes: Jean CLAUDE Date de création: 2013-07-30
Type de demande: Octroi Données SOC en date du: 2013-09-03
Etat: Négociation Dernière MAJ de la demande: 2013-09-12
Etablissement numéro 7 Folios visés:0797-00565-0565666
Attention ( et c'est mon plus gros problème ) ces informations ne se retrouvent pas toujours sur la meme ligne !
Donc je cherche une formule pour exemple, me sortir l'ETAT du dossier
( qui est: Négociation ) en B2 par exemple.
Ou en B3 , la Date de la MAJ qui est le 2013-09-12
Autre difficulté ( désolé... )
Exemple 1ere colonne, je connais toujours l'intitulé qui est Dir. de comptes: , mais je n'ai aucune idée de la longueur du nom qui va sortir... par contre, je pourrai indiquer dans la formule de me sortir TOUTS les caractères entre l'intitulé et s'arrêter juste avant Date de création, que je connais aussi...
J'ai déjà beaucoup cherché avec des formules avec GAUCHE ou STX, mais je n'arrive pas à travailler sur une colonne complète, sans la trier au préalable.
Merci énormément pour votre aide, c'est pour un très gros volume de recherche.
J'ai vraiment besoin d'aide :(
J'ai une liste de plus de 7 000 lignes avec des informations très divers et je dois simplement aller chercher dans toutes la liste des informations.
Ex : Dans la colonne A
Dir. de comptes: Jean CLAUDE Date de création: 2013-07-30
Type de demande: Octroi Données SOC en date du: 2013-09-03
Etat: Négociation Dernière MAJ de la demande: 2013-09-12
Etablissement numéro 7 Folios visés:0797-00565-0565666
Attention ( et c'est mon plus gros problème ) ces informations ne se retrouvent pas toujours sur la meme ligne !
Donc je cherche une formule pour exemple, me sortir l'ETAT du dossier
( qui est: Négociation ) en B2 par exemple.
Ou en B3 , la Date de la MAJ qui est le 2013-09-12
Autre difficulté ( désolé... )
Exemple 1ere colonne, je connais toujours l'intitulé qui est Dir. de comptes: , mais je n'ai aucune idée de la longueur du nom qui va sortir... par contre, je pourrai indiquer dans la formule de me sortir TOUTS les caractères entre l'intitulé et s'arrêter juste avant Date de création, que je connais aussi...
J'ai déjà beaucoup cherché avec des formules avec GAUCHE ou STX, mais je n'arrive pas à travailler sur une colonne complète, sans la trier au préalable.
Merci énormément pour votre aide, c'est pour un très gros volume de recherche.
A voir également:
- Extraire chaine de caracteres dans UNE COLONNE NON FILTRÉE
- Déplacer une colonne excel - Guide
- Extraire une video youtube - Guide
- Extraire le son d'une vidéo - Guide
- Trier une colonne excel - Guide
- Colonne word - Guide
3 réponses
Bonjour
exemple pour créer une colonne Dir.de compte: (soit 12 caractères
avec un début de liste en A2
si vous avez l'intitulé en permanence au début et avec le même nombre de caractères:
=SI(NB.SI(A2:A2;"*Dir.de compte*");DROITE(A2;NBCAR(A2)-12);""=)
Pour la date de MAJ:
=SI(NB.SI(A2:A2;"*MAJ*");DROITE(A2;10)*1);"")
le *1 transforme la date texte en date num excel (formater cellule en format date)
Pour Octroi, idem avec "*Octroi*"
ect
Crdlmnt
Ps: en complèment, pour mettre les items en colonne sur la même ligne, à condition qu'il y ait bien toujours 4 lignes de données par personne:
Pour le nom en B2
=DROITE(RECHERCHEV("*Dir.de compte*";A2:A5;1;0);NBCAR(RECHERCHEV("*Dir.de compte*";A2:A5;1;0)-12))
Pour l'état en C2
=Pour le nom en B2
=DROITE(RECHERCHEV("*Etat:*";A2:A5;1;0);NBCAR(RECHERCHEV("*Dir.de compte*";A2:A5;1;0)-5))
ect en D2,E2)
Copier coller ces formules en ligne 6
sélectionnez B2:E9
tirez sur la hauteur voulue
Une fois toutes ces colonnes établies, vous pouvez faire un copier coller spécial valeur du champ rempli pour enlever les formules, supprimer la liste d'origine et trier pour supprimer les blancs
Errare humanum est, perseverare diabolicum
exemple pour créer une colonne Dir.de compte: (soit 12 caractères
avec un début de liste en A2
si vous avez l'intitulé en permanence au début et avec le même nombre de caractères:
=SI(NB.SI(A2:A2;"*Dir.de compte*");DROITE(A2;NBCAR(A2)-12);""=)
Pour la date de MAJ:
=SI(NB.SI(A2:A2;"*MAJ*");DROITE(A2;10)*1);"")
le *1 transforme la date texte en date num excel (formater cellule en format date)
Pour Octroi, idem avec "*Octroi*"
ect
Crdlmnt
Ps: en complèment, pour mettre les items en colonne sur la même ligne, à condition qu'il y ait bien toujours 4 lignes de données par personne:
Pour le nom en B2
=DROITE(RECHERCHEV("*Dir.de compte*";A2:A5;1;0);NBCAR(RECHERCHEV("*Dir.de compte*";A2:A5;1;0)-12))
Pour l'état en C2
=Pour le nom en B2
=DROITE(RECHERCHEV("*Etat:*";A2:A5;1;0);NBCAR(RECHERCHEV("*Dir.de compte*";A2:A5;1;0)-5))
ect en D2,E2)
Copier coller ces formules en ligne 6
sélectionnez B2:E9
tirez sur la hauteur voulue
Une fois toutes ces colonnes établies, vous pouvez faire un copier coller spécial valeur du champ rempli pour enlever les formules, supprimer la liste d'origine et trier pour supprimer les blancs
Errare humanum est, perseverare diabolicum
Bonjour à tous,
une fonction personnalisée.
Apparemment tu as toujours 2 données par ligne.
Cette fonction te ramène la donnée 1 ou la donnée 2 de la ligne. Si tu demandes un rang >2 elle ira la chercher sur les lignes suivantes.
Exemple :
=donnée(A2;5) te ramènera l'état.
Si c'est préférable de citer l'intitulé de la donnée voulue (ex: =donnée(A2;"Etat:") car ce n'est pas toujours 2 lignes plus bas et que tu veux une évolution, le demander et donner le nombre de lignes maxi où chercher la donnée.
Mettre les cellules au format date.
https://www.cjoint.com/?CIpikXqWXcX
eric
Jamais tu ne répondras à un mp non sollicité...
Bon, ça c'est fait.
une fonction personnalisée.
Apparemment tu as toujours 2 données par ligne.
Cette fonction te ramène la donnée 1 ou la donnée 2 de la ligne. Si tu demandes un rang >2 elle ira la chercher sur les lignes suivantes.
Exemple :
=donnée(A2;5) te ramènera l'état.
Si c'est préférable de citer l'intitulé de la donnée voulue (ex: =donnée(A2;"Etat:") car ce n'est pas toujours 2 lignes plus bas et que tu veux une évolution, le demander et donner le nombre de lignes maxi où chercher la donnée.
Mettre les cellules au format date.
https://www.cjoint.com/?CIpikXqWXcX
eric
Jamais tu ne répondras à un mp non sollicité...
Bon, ça c'est fait.
Merci énormément ....
Si j'abuse pas, j'ai encore une grosse incompréhension pour batire mes formules... sans passer par VBA.
EX: en A1
1 Produits alpha ( je connais cette chaîne de caractères )
2 SA CARACTERISTIQUE 1
3 SA CARACTERISTIQUE 2
4 Produits beta ( je connais cette chaîne de caractères )
5 SA CARACTERISTIQUE 1
6 Compte xxxx ( je connais cette chaîne de caractères )
7 SA CARACTERISTIQUE 1
... je peux en avoir des milliers de lignes comme ça.
Ce que je cherche c'est extraire en A2
1 Produits beta
2 SA CARACTERISTIQUE 1
Donc identifier quelque part dans ma colonne ma chaîne de caractères Produits alpha, extraire la ligne + toutes les lignes en dessous et lui dire d'arrêter d'extraire quand il rencontre une autre chaîne que je lui indique...
J'ai conscience que c'est idéal avec VBA, mais je ne peux pas utiliser de macro pour mon travail... faut vraiment que je passe par EXCEL.
Merci beaucoup de votre aide :)
Si j'abuse pas, j'ai encore une grosse incompréhension pour batire mes formules... sans passer par VBA.
EX: en A1
1 Produits alpha ( je connais cette chaîne de caractères )
2 SA CARACTERISTIQUE 1
3 SA CARACTERISTIQUE 2
4 Produits beta ( je connais cette chaîne de caractères )
5 SA CARACTERISTIQUE 1
6 Compte xxxx ( je connais cette chaîne de caractères )
7 SA CARACTERISTIQUE 1
... je peux en avoir des milliers de lignes comme ça.
Ce que je cherche c'est extraire en A2
1 Produits beta
2 SA CARACTERISTIQUE 1
Donc identifier quelque part dans ma colonne ma chaîne de caractères Produits alpha, extraire la ligne + toutes les lignes en dessous et lui dire d'arrêter d'extraire quand il rencontre une autre chaîne que je lui indique...
J'ai conscience que c'est idéal avec VBA, mais je ne peux pas utiliser de macro pour mon travail... faut vraiment que je passe par EXCEL.
Merci beaucoup de votre aide :)