Excel Extraire chaîne de caractere avant nième slash [Résolu]

Signaler
Messages postés
5
Date d'inscription
mardi 7 janvier 2020
Statut
Membre
Dernière intervention
8 janvier 2020
-
tontontim
Messages postés
5
Date d'inscription
mardi 7 janvier 2020
Statut
Membre
Dernière intervention
8 janvier 2020
-
Bonjour, je cherche à extraire d'une cellule l'intégralité de ma chaîne avant un nième slash.
Par exemple une adresse internet :
https://aaaa/bbbb/ccccc/xxxc
je souhaite récupérer la chaine
https://aaaa/bbbb/ccccc
sachant que les a, b, c, x sont variables mais je veux toujours récupérer ce qui se trouve avant le 5éme /

J'ai essayé en mixant des nbcar, trouve, cherche, gauche etc. mais je n'arrive pas à faire en sorte de toujours avoir ce qu'il y a avant le 5éme slash...
A noter aussi que j'ai toujours 54 caractères à gauche de mon 4éme slash mais qu'entre le 4éme et le 5éme c'est variable.
D'avance merci.
Tontontim

8 réponses

Messages postés
1796
Date d'inscription
vendredi 25 juillet 2014
Statut
Membre
Dernière intervention
28 janvier 2020
524
Bonsoir
Une proposition
=GAUCHE(A2;TROUVE("/";A2;TROUVE("/";A2;TROUVE("/";A2;9)+1)+1)-1)
tontontim
Messages postés
5
Date d'inscription
mardi 7 janvier 2020
Statut
Membre
Dernière intervention
8 janvier 2020

Bonjour cette formule convient même si je ne comprend pas tout notamment avec le 9 et les +1+1-1. Mais ça fonctionne
Messages postés
2293
Date d'inscription
mercredi 3 février 2010
Statut
Membre
Dernière intervention
16 janvier 2020
776
Bonjour,
Pour récupérer tous les caractères avant le 5e /:
=GAUCHE(A1;CHERCHE("§";SUBSTITUE(A1;"/";"§";5))-1)

NB: Substitue() permet de choisir l'occurrence d'apparition d'un caractère dans une chaîne.
tontontim
Messages postés
5
Date d'inscription
mardi 7 janvier 2020
Statut
Membre
Dernière intervention
8 janvier 2020

Celle-ci aussi fonctionne et je la comprend un peut mieux, on cible et substitue le 5éme slash en § puis on cherche le § et enfin prend tout ce qui est à gauche de § -1 pour enlever le dernier caractère. Ca me va bien merci à tous.
Messages postés
15739
Date d'inscription
mardi 12 juin 2007
Statut
Contributeur
Dernière intervention
29 janvier 2020
8 966
Bonjour,

Tu ne dis pas quelle est ta version d'Excel.

Imaginant que tu as une version "récente" (au moins 2013), tu as une solution simplissime sans formule.

Tu insères une colonne à droite de ta colonne qui contient tes adresses. Dans la première cellule de cette colonne tu saisis le texte que tu souhaites obtenir, à savoir le texte situé entre le 4e et le 5e slash.
Tu gardes cette cellule sélectionnée, et tu appuies sur Ctrl+E. Normalement ce devrait être bon.
(Tu peux aussi cliquer sur Remplissage instantané, onglet Données).

m@rina
Messages postés
6492
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
28 janvier 2020
440
Bonjour,

avec la méthode Split en vba:

Dim result As String
Dim chaine As String
chaine = "https://aaaa/bbbb/ccccc/xxxc"
result = Split(chaine, "/")(5)
MsgBox Replace(chaine, "/" & result, "")


Voir ceci pour plus d'information:

https://silkyroad.developpez.com/VBA/ManipulerChainesCaracteres/#LI-I


Messages postés
5
Date d'inscription
mardi 7 janvier 2020
Statut
Membre
Dernière intervention
8 janvier 2020

Je suis sur 2016, je ne veux pas que entre 4 et 5ème slash mais bien tout avant le 5ème slash.
J'ai essayé ce que tu dis mais ça ne fonctionne pas.
De préférence sans VBA.
Merci
m@rina
Messages postés
15739
Date d'inscription
mardi 12 juin 2007
Statut
Contributeur
Dernière intervention
29 janvier 2020
8 966
Mais donc, as tu essayé en faisant un copier coller du texte jusqu'au 5e slash ? Je suis certaine que ça fonctionne.

Si tu dis que ça ne fonctionne pas, qu'obtiens tu ?
Messages postés
23238
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
29 janvier 2020
5 883
Bonjour à tous,

=GAUCHE(A2;CHERCHE("/";A2;20)-1) 

fait sur ton exemple, en réel remplace 20 par 55.
eric
Messages postés
5
Date d'inscription
mardi 7 janvier 2020
Statut
Membre
Dernière intervention
8 janvier 2020

re, ça je l'avais déjà fait mais ça ne me donne pas ce qu'il y a entre le slash 4 et le slash 5. Jusqu'au slash 4 j'ai bien 55 caractere mais je veux en plus les caractere entre slash 4 et 5 (variables.)
Messages postés
23238
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
29 janvier 2020
5 883
J'ai testé avant de poster, tu devrais faire pareil...
eric