Extraire chaîne de caractères

Résolu
Gabmont Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   -  
Gyrus Messages postés 3334 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour dans une cellule A1 j’ai le texte suivant :
Claudel (Paul), auteur ;
Denis (Maurice), illustrateur ;
Je souhaite obtenir :
dans une cellule B1 le nom de de l’auteur 1 ;
dans une cellule C1, obtenir le prénom de l’auteur 1,
dans une cellule D1, obtenir la fonction de l’auteur
Puis dans une cellule E1 le nom de l’auteur 2,
et ainsi de suite.
Comment puis-je procéder ? J'ai parfois un troisième auteur dont il faut extraire les mêmes informations
Précision : Dans ma cellule A1 chaque "auteur (prénom), fonction;" est séparé d'un autre auteur par un point virgule et un passage à la ligne.
J'utilise Excel 2013

Merci pour votre aide.

A voir également:

1 réponse

Gyrus Messages postés 3334 Date d'inscription   Statut Membre Dernière intervention   526
 
Bonjour,

Essaie comme cela :
Sub Scinder()
Dim T As String
Dim Col As Integer, i As Integer
Col = 2
For i = 1 To Len(Range("A1"))
T = Range("A1").Characters(i, 1).Text
If T = ";" Or T = "(" Or T = "," Then
Col = Col + 1
Else
If T <> ")" And T <> Chr(10) Then
Cells(1, Col) = Cells(1, Col) & T
End If
End If
Next i
End Sub


A+
0
Gabmont Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
Merci de ta réponse mais j'avoue être trop novice pour comprendre.

En fait mon problème consiste surtout à savoir comment extraire le terme "auteur" et le terme "illustrateur", à savoir la fonction des auteurs
car j'arrive à extraire les données entre parenthèse et avant la parenthèse
Merci pour votre aide
0
Gyrus Messages postés 3334 Date d'inscription   Statut Membre Dernière intervention   526 > Gabmont Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
C'est une macro qu'il faut placer dans un module standard.
Tu peux la visualiser dans l'exemple joint.
Alt + F11 pour ouvrir l'éditeur VBA,
puis CTRL + R pour ouvrir l'Explorateur de projets.
Le code se trouve sous Modules / Module 1
https://www.cjoint.com/c/FEFoF38jtAA

A+
0
Gabmont Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   > Gyrus Messages postés 3334 Date d'inscription   Statut Membre Dernière intervention  
 
Merci mais Je ne comprends pas ce qu'est l'éditeur VBA et l'explorateur de projets. J'ai ouvert le fichier et je trouve seulement l'exemple
Claudel (Paul), auteur ;
Denis (Maurice), illustrateur ;

Est-ce que vous pourriez seulement me donner la formule?

Entre temps j'ai réussi à faire cela:

en supposant que ma cellule de départ est en A3

Pour extraire le Nom (Prénom) auteur ; 1
=GAUCHE(A3;CHERCHE(",";A3)-1)

puis pour auteur ; Nom 1
=SUPPRESPACE(GAUCHE(B3;CHERCHE(" ";B3))&STXT(B3;CHERCHE(")";B3)+1;255))

puis pour auteur; prénom 1
=STXT(A3;CHERCHE(CAR(40);A3)+1;CHERCHE(CAR(41);A3)-CHERCHE(CAR(40);A3)-1)

A PARTIR DE LA CA SE COMPLIQUE POUR MOI

puis pour Nom (Prénom) auteur 2
=DROITE(A3;NBCAR(A3)-CHERCHE(",";A3))

puis pour Nom auteur 2
=GAUCHE(F3;CHERCHE(",";F3)-1)

puis pour Prénom auteur 2
=STXT(G4;CHERCHE(CAR(40);G4)+1;CHERCHE(CAR(41);G4)-CHERCHE(CAR(40);G4)-1)

LE PROBLEME c'est que je n'arrive pas à extraire le terme "auteur" et que je perd le terme illustrateur

Je ne sais pas si je suis claire.

Merci en tout cas
0
Gabmont Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   > Gyrus Messages postés 3334 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,
J'ai réussi à ouvrir ton fichier et à voir la macro mais je n'arrive pas à l'appliquer à d'autres lignes et je ne sais pas comment l'insérer dans mon propre fichier pour qu'elle s'applique aux autres lignes
. J'ai copié dans l'éditeur VBA le code mais je n'arrive pas à l'appliquer à ma propre liste pour l'exécuter à toutes les lignes.
Merci de ton aide
0
Gyrus Messages postés 3334 Date d'inscription   Statut Membre Dernière intervention   526 > Gabmont Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,

Il n'est pas étonnant que la procédure s'applique uniquement à A1 puisque cela correspond à ta demande initiale.
Il faut donc que tu expliques précisément quelles sont les cellules à traiter.
Le mieux est de proposer un fichier exemple.
Pour cela, tu peux utiliser https://www.cjoint.com/

A+
0