Excel: extraction de caracteres
Résolu/Fermé
mathraxe
Messages postés
26
Date d'inscription
mardi 10 août 2010
Statut
Membre
Dernière intervention
23 mai 2012
-
20 oct. 2010 à 08:47
mathraxe Messages postés 26 Date d'inscription mardi 10 août 2010 Statut Membre Dernière intervention 23 mai 2012 - 20 oct. 2010 à 16:32
mathraxe Messages postés 26 Date d'inscription mardi 10 août 2010 Statut Membre Dernière intervention 23 mai 2012 - 20 oct. 2010 à 16:32
A voir également:
- Excel: extraction de caracteres
- Liste déroulante excel - Guide
- Formule excel - Guide
- Si et excel - Guide
- Aller à la ligne excel - Guide
- Mise en forme conditionnelle excel - Guide
5 réponses
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 744
20 oct. 2010 à 09:07
20 oct. 2010 à 09:07
Bonjour,
J'avoue ne pas tout piger. D'un côté tu dis avoir des dénominations SPRL diapason, ASBL yatra, BVBA philips que tu dois extraire, ensuite tu dois mettre en col A des abréviations : et je dois mettre les (SPRL,SCRL,ASBL,BVBA,SCRL, SA, SC) dans la colone A.
Et pour finir tu parles de choses à extraire entre parenthèses... On s'y perds un peu je crois.
1- repose mieux ta question,
2- joinds un fichier exemple (en utilisant cjoint.fr par exemple) sans données confidentielles, avec ce que tu as et ce que tu veux...
J'avoue ne pas tout piger. D'un côté tu dis avoir des dénominations SPRL diapason, ASBL yatra, BVBA philips que tu dois extraire, ensuite tu dois mettre en col A des abréviations : et je dois mettre les (SPRL,SCRL,ASBL,BVBA,SCRL, SA, SC) dans la colone A.
Et pour finir tu parles de choses à extraire entre parenthèses... On s'y perds un peu je crois.
1- repose mieux ta question,
2- joinds un fichier exemple (en utilisant cjoint.fr par exemple) sans données confidentielles, avec ce que tu as et ce que tu veux...
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
20 oct. 2010 à 09:55
20 oct. 2010 à 09:55
Bonjour le fofo
Non il n'existe pas de "macro" prête à l'emploi.
Voilà un exemple à adapter :
;o)
Non il n'existe pas de "macro" prête à l'emploi.
Voilà un exemple à adapter :
'Procédure principale Sub Main() Dim ws As Worksheet Dim derlig As Long Dim i As Long Set ws = Worksheets(1) derlig = ws.Range("B65536").End(xlUp).Row For i = 1 To derlig If InStr(1, ws.Range("B" & i).Value, "(") = 0 Then ws.Range("A" & i).Value = returnPrefixe(ws.Range("B" & i).Value) Else ws.Range("B" & i).Value = returnModif(ws.Range("B" & i).Value) End If Next i End Sub 'Fonction qui retourne le préfixe Private Function returnPrefixe(ByVal str As String) As String Dim mTab mTab = Split(str, " ") returnPrefixe = mTab(0) End Function 'Fonction qui retourne le texte modifié Private Function returnModif(ByVal str As String) As String Dim char As String If InStr(str, ")") = 0 Or Right(str, 1) = "(" Then returnModif = "" Exit Function End If char = Mid(str, InStrRev(str, "(") + 1) char = Mid(char, 1, Len(char) - 1) returnModif = char & " " & Mid(str, 1, Len(char) + 3) End Function
;o)
mathraxe
Messages postés
26
Date d'inscription
mardi 10 août 2010
Statut
Membre
Dernière intervention
23 mai 2012
20 oct. 2010 à 09:59
20 oct. 2010 à 09:59
je reformule j ai un listing de prospects (Nom de la societé, adresse, N°,code postal,ville, etc..)
dans le Nom de la societé (colonne B) j ai des "SPRL diapason, ASBL yatra, BVBA philips" on m'a demandé de faire une colonne A et de mettre en évidence le statut de la société.
Et on m'a demandé aussi de retirer ce qui été entre parenthese dans la colonne B et de le mettre devant la dénomination pour etre plus conforme ex: auberge (l') = l'auberge
j'ai fais un printscreen pour mieux comprendre
https://www.cjoint.com/?0kuj5hCbnLd
encore merci de votre aide
dans le Nom de la societé (colonne B) j ai des "SPRL diapason, ASBL yatra, BVBA philips" on m'a demandé de faire une colonne A et de mettre en évidence le statut de la société.
Et on m'a demandé aussi de retirer ce qui été entre parenthese dans la colonne B et de le mettre devant la dénomination pour etre plus conforme ex: auberge (l') = l'auberge
j'ai fais un printscreen pour mieux comprendre
https://www.cjoint.com/?0kuj5hCbnLd
encore merci de votre aide
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
Modifié par Polux31 le 20/10/2010 à 10:15
Modifié par Polux31 le 20/10/2010 à 10:15
le tableau n'est pas conforme à ton énoncé ... tu dis "SPRL diapason, ASBL yatra, BVBA philips" et le tableau dit : "diapason SPRL, vatra ASBL etc .."
Ça fait une grosse différence dans le traitement. Tu sais combien ça peut coûter ce genre d'erreur si tu devais payer un développeur ?
Ça fait une grosse différence dans le traitement. Tu sais combien ça peut coûter ce genre d'erreur si tu devais payer un développeur ?
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 744
20 oct. 2010 à 10:31
20 oct. 2010 à 10:31
Bonjour,
@Polux31 : tu prends la suite?
@mathraxe : peux tu lister les statuts de société : SPRL, ASBL etc...
@Polux31 : tu prends la suite?
@mathraxe : peux tu lister les statuts de société : SPRL, ASBL etc...
mathraxe
Messages postés
26
Date d'inscription
mardi 10 août 2010
Statut
Membre
Dernière intervention
23 mai 2012
20 oct. 2010 à 10:43
20 oct. 2010 à 10:43
excuse moi polux de ne pas savoir expliquer mon probleme avec les bon mots d'ou le printscreen pour mieux vous faire comprendre
Pijaku; il y a des SPRL, SCRL, SPRLU, ASBL, BVBA, SA, SC. voila
je vous remerci de pouvoir m'aider
Pijaku; il y a des SPRL, SCRL, SPRLU, ASBL, BVBA, SA, SC. voila
je vous remerci de pouvoir m'aider
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
20 oct. 2010 à 12:01
20 oct. 2010 à 12:01
@pijaku : non, j'ai déjà donné ... au suivant.
@mathraxe : ce n'est pas d'avoir su ou pas employer les bons mots mais tout simplement une mauvaise analyse du besoin qui résulte à une perte de temps inutile pour tout le monde.
Bonne continuation
@mathraxe : ce n'est pas d'avoir su ou pas employer les bons mots mais tout simplement une mauvaise analyse du besoin qui résulte à une perte de temps inutile pour tout le monde.
Bonne continuation
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 744
20 oct. 2010 à 12:47
20 oct. 2010 à 12:47
re-
N'ayant pas son talent, je me suis permis de reprendre légèrement les codes donnés par Polux31 ci-dessus. Je les ai juste adaptés à la nouvelle situation décrite par mathraxe...
Cordialement,
-- Il n'y a rien de tel qu'une question idiote, seulement une réponse idiote. A.Einstein --
N'ayant pas son talent, je me suis permis de reprendre légèrement les codes donnés par Polux31 ci-dessus. Je les ai juste adaptés à la nouvelle situation décrite par mathraxe...
Sub Main() Dim ws As Worksheet Dim derlig As Long Dim i As Long Dim NomTableau As Variant Dim val As Variant NomTableau = Array("SPRLU", "SPRL", "SCRL", "ASBL", "BVBA", "SA", "SC") Set ws = Worksheets(1) derlig = ws.Range("B65536").End(xlUp).Row For i = 2 To derlig For Each val In NomTableau If ws.Range("B" & i).Value Like "*" & val & "*" Then ws.Range("A" & i).Value = val ws.Range("B" & i).Value = Replace(ws.Range("B" & i).Value, val, "") End If Next If InStr(1, ws.Range("B" & i).Value, "(") <> 0 Then ws.Range("B" & i).Value = returnModif(ws.Range("B" & i).Value) End If Next i End Sub Private Function returnModif(ByVal str As String) As String Dim char As String If InStr(str, ")") = 0 Or Right(str, 1) = "(" Then returnModif = "" Exit Function End If char = Mid(str, InStrRev(str, "(") + 1) If InStr(char, " ") <> 0 Then char = Replace(char, " ", "") End If char = Mid(char, 1, Len(char) - 1) char = char & " " & Replace(str, char, "") char = Replace(char, "(", "") char = Replace(char, ")", "") returnModif = char End Function--
Cordialement,
-- Il n'y a rien de tel qu'une question idiote, seulement une réponse idiote. A.Einstein --
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
mathraxe
Messages postés
26
Date d'inscription
mardi 10 août 2010
Statut
Membre
Dernière intervention
23 mai 2012
20 oct. 2010 à 13:29
20 oct. 2010 à 13:29
Pijaku je dois tous simplement te dire un grand grand merci!!!
ta macro est superbe :-)
encore merci pour l aide ça fait plaisir
ta macro est superbe :-)
encore merci pour l aide ça fait plaisir
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 744
20 oct. 2010 à 13:45
20 oct. 2010 à 13:45
Remercie plutôt Polux31, il a fait tout le boulot, je n'ai fait qu'adapter son travail à ta situation...
mathraxe
Messages postés
26
Date d'inscription
mardi 10 août 2010
Statut
Membre
Dernière intervention
23 mai 2012
20 oct. 2010 à 16:32
20 oct. 2010 à 16:32
Merci a vous deux c'est du trés bon boulot :-)