Extraire chaine à partir du 3ième tiret

Le
C15
Bonjour à tous et à toutes,


J'ai des références d'articles composées d'une série de caractères séparés
par des tirets.

Je voudrais extraire la chaine de caractères (dont la longueur est variable)
située après le 3ième tiret (dont la position est variable).

Je n'ai rien trouvé sur le net, sur ce forum ou excelabo.


Merci de votre aide.

A+

C15
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
JB
Le #4752071
Bonsoir,

On suppose que l'on prend tout après le 3e tiret:

=STXT(A1;TROUVE("-";A1;TROUVE("-";A1;TROUVE("-";A1)+1)+1)+1;999)

JB

On 9 sep, 18:57, " C15"
Bonjour à tous et à toutes,

J'ai des références d'articles composées d'une série de caractè res séparés
par des tirets.

Je voudrais extraire la chaine de caractères (dont la longueur est vari able)
située après le 3ième tiret (dont la position est variable).

Je n'ai rien trouvé sur le net, sur ce forum ou excelabo.

Merci de votre aide.

A+

C15


micdub
Le #4752041
Bonjour,

Voici une autre solution... mais en VBA :

Function trancheder(code)
' Extraire la dernière tranche d'un code articulé
' On suppose que le code comporte 3 tirets
Dim machaine
' Séparateur utilisé : le tiret
machaine = Split(code, "-", -1, 1)
trancheder = machaine(3)
End Function

Après avoir créé un module et inséré le code présenté ci-dessus, il suffit
d'utiliser la fonction de la manière suivante : =trancheder(B3)
(B3 contient la référence de l'article à traiter)

Cordialement - Micdub


Bonjour à tous et à toutes,


J'ai des références d'articles composées d'une série de caractères séparés
par des tirets.

Je voudrais extraire la chaine de caractères (dont la longueur est variable)
située après le 3ième tiret (dont la position est variable).

Je n'ai rien trouvé sur le net, sur ce forum ou excelabo.


Merci de votre aide.

A+

C15





Trirème
Le #4752011
Bonjour,
En complément des autres réponses, sur le site de Laurent Longre
(http://xcell05.free.fr/)
tu trouveras un package de fonctions complémentaires dont une fonction nommée
STEXTE() qui répondra à tes attentes.
Et les autres fonctions valent également le détour.

Cordialement,
Trirème

Bonsoir,

On suppose que l'on prend tout après le 3e tiret:

=STXT(A1;TROUVE("-";A1;TROUVE("-";A1;TROUVE("-";A1)+1)+1)+1;999)

JB

On 9 sep, 18:57, " C15"
Bonjour à tous et à toutes,

J'ai des références d'articles composées d'une série de caractères séparés
par des tirets.

Je voudrais extraire la chaine de caractères (dont la longueur est variable)
située après le 3ième tiret (dont la position est variable).

Je n'ai rien trouvé sur le net, sur ce forum ou excelabo.

Merci de votre aide.

A+

C15






C15
Le #4750591
Bonsoir à tous et à toutes et merci de vos réponses.

J'ai hélas oublié de vous précisé qu'il s'agissait d'une chaîne de
caractères comportant 4 groupes séparés de tirets et que je veux donc
extraire seulement le 3ième groupe.

A ce "détail" près, si l'on peut dire, les réponses proposées fonctionnent
parfaitement (pour extraire tout ce qu'il y a après le 3ième tiret).

Merci de votre aide

A+

C15
"micdub"
Bonjour,

Voici une autre solution... mais en VBA :

Function trancheder(code)
' Extraire la dernière tranche d'un code articulé
' On suppose que le code comporte 3 tirets
Dim machaine
' Séparateur utilisé : le tiret
machaine = Split(code, "-", -1, 1)
trancheder = machaine(3)
End Function

Après avoir créé un module et inséré le code présenté ci-dessus, il suffit
d'utiliser la fonction de la manière suivante : =trancheder(B3)
(B3 contient la référence de l'article à traiter)

Cordialement - Micdub


Bonjour à tous et à toutes,


J'ai des références d'articles composées d'une série de caractères
séparés
par des tirets.

Je voudrais extraire la chaine de caractères (dont la longueur est
variable)
située après le 3ième tiret (dont la position est variable).

Je n'ai rien trouvé sur le net, sur ce forum ou excelabo.


Merci de votre aide.

A+

C15







Modeste
Le #4750511
Bonsour® C15 avec ferveur ;o))) vous nous disiez :

J'ai hélas oublié de vous précisé qu'il s'agissait d'une chaîne de
caractères comportant 4 groupes séparés de tirets et que je veux donc
extraire seulement le 3ième groupe.

A ce "détail" près, si l'on peut dire, les réponses proposées
fonctionnent parfaitement (pour extraire tout ce qu'il y a après le
3ième tiret).


donc entre le 2eme et le 3eme tiret ...
adapté de la formule de JB :
=GAUCHE(STXT(A1;TROUVE("-";A1;TROUVE("-";A1)+1)+1;999);TROUVE("-";STXT(A1;TROUVE("-";A1;TROUVE("-";A1)+1)+1;999))-1)



--
--
@+
;o)))

C15
Le #4750311
Bonjour Modeste,

Merci de cette parfaite réponse, à moi maintenant de l'analyser pour en
comprendre le raisonnement.

Bonne journée

A+

C15
"Modeste" %234iYMu%
Bonsour® C15 avec ferveur ;o))) vous nous disiez :

J'ai hélas oublié de vous précisé qu'il s'agissait d'une chaîne de
caractères comportant 4 groupes séparés de tirets et que je veux donc
extraire seulement le 3ième groupe.

A ce "détail" près, si l'on peut dire, les réponses proposées
fonctionnent parfaitement (pour extraire tout ce qu'il y a après le
3ième tiret).


donc entre le 2eme et le 3eme tiret ...
adapté de la formule de JB :
=GAUCHE(STXT(A1;TROUVE("-";A1;TROUVE("-";A1)+1)+1;999);TROUVE("-";STXT(A1;TROUVE("-";A1;TROUVE("-";A1)+1)+1;999))-1)



--
--
@+
;o)))





Publicité
Poster une réponse
Anonyme