extraire texte entre -- texte --

bica

XLDnaute Nouveau
bonjour à toutes et à tous ,

j'ai besoin de vôtre aide pour extraire d'une cellule un texte qui se trouve entre deux tirets , le texte en question peut - être extrait par une formule mais ma préférence va pour le vba .
Plusieurs pistes ont été exploré sur ce forum concernant l'extraction de textes entre parenthèses , entre crochets etc.. mais chez moi le problème réside sur les tirets .

Merci pour vôtre aide quant à mon problème.
 

Pièces jointes

  • extraire.xls
    13.5 KB · Affichages: 124
  • extraire.xls
    13.5 KB · Affichages: 129
  • extraire.xls
    13.5 KB · Affichages: 131

CBernardT

XLDnaute Barbatruc
Re : extraire texte entre -- texte --

Bonjour bica et le forum,


Une solution avec la formule suivante :

=SUPPRESPACE(GAUCHE(DROITE(A2;NBCAR(A2)-(TROUVE("--";A2)+1));NBCAR(DROITE(A2;NBCAR(A2)-(TROUVE("--";A2)+1)))-2))

Cordialement

Bernard
 
Dernière édition:

bica

XLDnaute Nouveau
Re : extraire texte entre -- texte --

Salut Risleure ,

après avoir tester ton code vba je me suis rendu compte qu'il m'efface l'extraction du texte entre les tirets si je relance le code vba .En effet j'incrémente sans cesse cette liste et ton code m'efface les données extraites auparavant , comment y remédier ?

merci et à bientôt .

Bica.
 

mromain

XLDnaute Barbatruc
Re : extraire texte entre -- texte --

bonjour le fil,

j'ai modifié un peu le code de Risleure.
C'est pas très beau, mais ça a l'ai de fonctionner :

Code:
Sub Separateur()
'Risleure
With ThisWorkbook.Sheets
.Add after:=ThisWorkbook.Sheets(.Count)
    Columns("A:A").Copy ThisWorkbook.Sheets(.Count).Range("A1")
    ThisWorkbook.Sheets("Feuil1").Select
    ThisWorkbook.Sheets("Feuil1").Columns("A:A").Select
    Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
        Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar _
        :="--", FieldInfo:=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, _
        1)), TrailingMinusNumbers:=True
        Columns("B:B").Delete
    ThisWorkbook.Sheets(.Count).Range("A:A").Copy ThisWorkbook.Sheets("Feuil1").Range("A1")
    Application.DisplayAlerts = False
    ThisWorkbook.Sheets(.Count).Delete
    Application.DisplayAlerts = True
End With
End Sub

a+
 

bica

XLDnaute Nouveau
Re : extraire texte entre -- texte --

merci mromain pour ton aide , sauf que ton code vba n'extrait pas le texte entre "--" de la cellule de départ vers la cellule de destination mais la copie .En fait j'aimerai extraire le texte de la cellule A1 vers B1 sans conserver également le proprement dit texte en A1 .

merci et à bientôt .

Bica
 

GCFRG

XLDnaute Occasionnel
Re : extraire texte entre -- texte --

Re, avex les valeurs rectifier colonne A

Cordialement gilbert
 

Pièces jointes

  • extraire(1).xls
    36.5 KB · Affichages: 118
  • extraire(1).xls
    36.5 KB · Affichages: 121
  • extraire(1).xls
    36.5 KB · Affichages: 121

Discussions similaires

Statistiques des forums

Discussions
312 518
Messages
2 089 249
Membres
104 079
dernier inscrit
RodLemar