Recuperer texte d'un lien hypertext

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

fifounet

XLDnaute Occasionnel
Bonjour le forum
Comment récuperer avec une petite macro le texte d'un lien web de la cellule A1 dans B1 et non la valeur de A1
exemple A1 "toto" avec lien vers "www.toto.etc" en B1 je veux "www.toto.etc"
Merci de votre aide
fifounet
 
Re : Recuperer texte d'un lien hypertext

Bonjour fifounet,

Voici une fonction personnalisée :
VB:
Function Lien(c As Range) As String
    Lien = c.Hyperlinks.Item(1).Address
End Function

à utiliser comme ceci :
Code:
=Lien(A1)

Elle te renverra l'adresse du lien contenu dans la cellule A1.

A+
 
Re : Recuperer texte d'un lien hypertext

Merci fredoo ça marche,
Est-il possible de récupérer uniquement une zone de texte dans ce lien
exemple 10 caractères du texte à partir du 40eme caractere en partant de la gauche
directement dans la macro sans passer par une formule dans une autre cellule.
merci
 
Re : Recuperer texte d'un lien hypertext

Re-bonsoir fifounet,

Oui, c'est possible !

Pour cela, utilises la formule VBA :
VB:
Right(Left(c.Hyperlinks.Item(1).Address,50),10)

Celle_ci utilise Left et Right qui fonctionne exactement comme les formules EXCEL.

A+
 
Re : Recuperer texte d'un lien hypertext

Super fredoo
sauf que je viens de m'apercevoir qu'il y a des fois moins de 10 caractères
par contre ça commence tjrs à 50 et il y a le signe % apres le dernier caractère voulu
le but serait de récuperer la chaine de caracteres entre le 50eme et le signe % suivant
c'est peut etre plus compliqué et est ce faisable?
merci encore pour ton aide
 
Re : Recuperer texte d'un lien hypertext

Re-bonsoir,

Cela fonctionne chez moi. Si ce code ne fonctionne toujours pas, postes un fichier exemple avec ce que tu as et ce que tu souhaites obtenir.

VB:
Function lien(c As Range) As String
    Dim tt
    tt = c.Hyperlinks.Item(1).Address
    lien = Mid(tt, 50, WorksheetFunction.Find("%", tt, 1) - 50)
End Function

A+
 
Re : Recuperer texte d'un lien hypertext

Bonjour
Merci pour ton aide fredoo, je n'ai pu m'y recoller que ce matin.
Effectivement ça fonctionne bien s'il n'y a pas de signe % avant le texte à récupérer
voila ici le texte à récupérer est 999999:
ttp://ww.toto.com/essai/fichier/php3/toto.php?name=k&session=precision%3D999999%26reqid%3D200&cler=LEtbZGotByClQ
J'espère que je me fais bien comprendre!
a+
 
Re : Recuperer texte d'un lien hypertext

Bonjour,

Pour éviter de faire encore moult allers-retours infructueux, peux-tu me mettre dans un fichier EXCEL exemple, une liste de plusieurs liens avec le texte que tu souhaites récupérer et les conditions qui expliquent pourquoi c'est ce texte là que tu veux. Ainsi, je pourrais te faire une réponse adaptée.

A+
 
Re : Recuperer texte d'un lien hypertext

Re-bonjour,

d'après l'exemple fourni, voici le code à utiliser. Je pense qu'il te faudra adapter la valeur 74 à tes vrais liens.
VB:
Function lien(c As Range) As String
    Dim tt
    tt = c.Hyperlinks.Item(1).Address
    tt = WorksheetFunction.Substitute(tt, "%3D", "&")
    lien = Mid(tt, 74, WorksheetFunction.Find("&", tt, 74) - 74)
End Function
A+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
7
Affichages
695
Réponses
3
Affichages
214
Réponses
3
Affichages
258
Réponses
2
Affichages
244
Réponses
13
Affichages
595
Retour